Дисциплины - Разработка веб-приложений

Начало разработки - Маршруты сайта и контроллеры

Определить маршруты приложения можно в файле routes/web.php или routes/api.php.

Для определения маршрутов имеется специальный фасад Route. Пример:

Route::get('/path', 'Controller@method').

Контроллеры в Laravel это классы HTTP запросов. Они реализуют любую логику и вывод (response).

Кроме обычных контроллеров, Laravel позволяет создавать api-контроллеры и ресурные контроллеры. Отличие их в следующем: api-контроллер уже содержат методы для реализации CRUD-запросов (Create, Read, Update, Delete); ресурсный контроллер помимо этих методов содержит еще два метода, реализующие формы создания и редактирования; а при создании обычного контроллера, мы получаем пустой класс.

Создание обычного контроллера

php artisan make:controller ProductController

Создание api-контроллера

php artisan make:controller ProductController --api

Создание ресурсного контроллера

php artisan make:controller ProductController --resource

Из экшна (или метода) контроллера мы можем передать данные в view с помощью compact()

return view('index', compact('products'));

Методы маршрутизатора

Route::get($uri, $callback);
Route::post($uri, $callback);
Route::put($uri, $callback);
Route::patch($uri, $callback);
Route::delete($uri, $callback);

Где:

get - вывод данных

post - вставка данных

put и patch - обновление данных

delete - удаление

И put, и patch используются для обновления ресурсов, но put обычно заменяет весь ресурс, а patch обновляет определенные поля.

При определении нескольких маршрутов, которые используют один и тот же URI, маршруты, использующие методы get, post, put, patch, delete и options, должны быть определены перед маршрутами, использующими методы any, match и redirect. Это гарантирует, что входящий запрос соответствует правильному маршруту.

Количество комментариев: 0

Для того, чтобы оставить коментарий необходимо зарегистрироваться