#3 Laravel 5: Первый контроллер

Основы Laravel 5

Все начинается в маршрутах. И для того чтобы создать новый маршрут - нам надо создать сущность на которую будет ссылаться маршрут. То есть надо создать новый контроллер. В phpStorm открываем терминал и выполняем следующий код:

php artisan make:controller PostController

где PostController - имя нашего контроллера.

После завершения операции в папке app/Http/Controllers появится файл PostController.php
По-умолчанию Laravel создает RESTful контроллеры. И у нас сразу имеются готовые методы index, create, store, show, edit, update, destroy.

Сделаем так чтобы главную страницу сайта формировал PostController и index() метод.
Для этого заккоментируем строку в которой мы задаем маршрут для главной страницы и напишем новую строку кода:

//Route::get('/', 'WelcomeController@index');
get('/', ['as' => 'posts', 'uses' => 'PostController@index']);

Laravel очень гибок - есть много способов решить одну и ту же задачу. Как вы видете код мы записали иначе, а задачу он выполняет ту же. Вторым параметром функции get() мы задаем массив, в котором указываем имя нашего нового Маршрута - posts и контроллер с методом которые будут формировать странцу.

Уже из написания приходит понимание что Route::get() и просто get() - создают маршрут Гет запроса.
Логично предположить что для пост запроса мы будем использовать post(). В ларавел - всё логично ))))

Для каждого экшена (под экшеном я подразумеваю метод класса который формирует определенную страницу) у нас будет свой шаблон, своё представление. В папке resources/views/ создадим папку post (одноименно с контролером для которого здесь будут храниться представления). И в этой папке создадим файл index.blade.php (так же пусть имя представления будет идентично имени метода которые формирует страницу). И заполним тестовым текстом.

Теперь нам надо в PostConroller::index() использовать наше представление:

public function index()
{
       return view('post.index');
}

Опять всё просто и логично - надо выдать представление? Вызываем функцию view()! И передаем ей параметром ПУТЬ.ИМЯ нужного представления. (Конечно было бы еще логичнее чтобы Ларавел, если параметр не указан, сам догадывался подставить ИМЯ_КОНТРОЛЛЕРА.ИМЯ_МЕТОДА.... )))) )

Добавить отзыв (пожелание, комментарий)