Вывести список маршрутов на экран:
php artisan route:listОбновить маршрутизатор и кэш можно одной командой
php artisan optimize
Маршрут для запросов get с параметром выглядит так:
Route::get('/user/{id}', function (string $id) { return 'User '.$id; });
Символ ?
делает значение параметра не обязательным.
Route::get('/user/{name?}', function (string $name = 'John') { return $name; });
Фильтры маршрутов
Route::get('/user/{name}', function (string $name) { // ... })->where('name', '[A-Za-z]+'); Route::get('/user/{id}', function (string $id) { // ... })->where('id', '[0-9]+'); Route::get('/user/{id}/{name}', function (string $id, string $name) { // ... })->where(['id' => '[0-9]+', 'name' => '[a-z]+']);
Именные маршруты:
Route::get('/user/profile', function () { // ... })->name('profile');
Подключение middleware к маршрутам осуществляется внутри group:
Route::middleware(['auth:sanctum','admin'])->group(function () { Route::post('logout', [Controllers\AuthController::class, 'logout']); Route::get('profile', [Controllers\AuthController::class, 'profile']); });
Group также можно использовать для группировки маршрутов одного контроллера
Подключение namespace контроллеров в файл маршрутизатора:
use App\Http\Controllers;
Тогда при подлкючении контроллера можно воспользоваться относительным путём:
Route::controller(Controllers\OrderController::class)->group(function () { Route::get('/orders/{id}', 'show'); Route::post('/orders', 'store'); });