#4 - Контроллеры и валидация

#4 - Контроллеры и валидация

Контроллеры это одна из ключевых составляющих модели MVC. В уроке мы научимся получать данные из формы в контроллер, а также изучим способы валидации данных через встроенные проверки Laravel.

Видеоурок

Полезная ссылка:


Контроллеры отвечают за обработку различных данных, а также за связь моделей (те файлы что работают с базой данных) и HTML шаблонов. Для создания контроллера удобнее всего использовать встроенный менеджер artisan. При помощи artisan вы можете воспользоваться командой:

php artisan make:controller SomeController

После чего, у вас будет создан контроллер с названием SomeController. Лучше всегда использовать artisan для создания подобных файлов, так в таком случае все файлы будут доступны по всему проекту и у вас не будет возникать никаких ошибок.

Функции в контроллерах

В контроллерах вы можете прописывать функции, что будут срабатывать при посещении пользователем какой-либо страницы. Подобные функции вы можете вызывать самостоятельно из файла web.php. 


В функциях вы можете получать данные из форм при помощи класса Request

Обработка данных

Для валидации данных вы можете использовать функцию validate или же использовать отдельный класс с правилами (rules).


Создавать отдельный класс удобно в том случае, если ваша валидация будет содержать множество проверок и сообщений с ошибками.


Пример функции validate для обработки данных:

public function store(Request $request) {
	$validatedData = $request->validate([
		// Обработка полей title, а также body
		// Они оба обязательны к заполнению и плюс title должен содержать уникальное название,
		// которое не повторяется в таблице posts в базе данных,
		// а также должен быть не более 255 символов
		'title' => 'required|unique:posts|max:255',
		'body' => 'required',
	]);
}

Материалы для курса

Чтобы скачивать материалы к видеокурсам необходимо оформить подписку на сайт

Задание к уроку

Необходимо оформить подписку на проект, чтобы получить доступ ко всем домашним заданиям

Большое задание по курсу

Вам необходимо оформить подписку на сайте, чтобы иметь доступ ко всем большим заданиям. В задание входит методика решения, а также готовый проект с ответом к заданию.
PS: подобные задания доступны при подписке от 1 месяца

Также стоит посмотреть

Верстка сайта на HTML5 и CSS3
13 уроков
Фреймворк Laravel: cоздание веб сайта
8 уроков
Изучение препроцессора SASS / SCSS
7 уроков
Изучение Git для новичков
5 уроков
Комментарии для сайта Cackle