Блог Серії
Кар'єра
Вакансії Компанії
Навчання
Співбесіди Тестування Відео
Екосистема
Пакети Ресурси Проєкти
Інше
Події Про нас
Junior Routing 13

Як працює маршрутизація (Routing) в Laravel?

Маршрутизація визначає, як застосунок відповідає на запити: вона прив'язує URL та HTTP-метод до конкретної дії - замикання або методу контролера.

Маршрути оголошуються у файлах директорії routes:

  • web.php - веб-інтерфейс із сесіями, cookie та CSRF-захистом.
  • api.php - stateless API (без сесій, з префіксом /api).
  • console.php - команди та розклад.

Laravel підтримує методи для кожного HTTP-дієслова - Route::get, post, put, patch, delete, а також Route::match([...]) і Route::any:

Route::get('/posts', [PostController::class, 'index']);
Route::post('/posts', [PostController::class, 'store']);
Route::get('/posts/{post}', [PostController::class, 'show'])->name('posts.show');

// Групи: спільні middleware, префікс, простір імен
Route::middleware('auth')->prefix('admin')->group(function () {
    Route::get('/dashboard', [DashboardController::class, 'index']);
});

Ключові можливості:

  • {post} - параметр маршруту; його можна одразу резолвити в модель (Route Model Binding).
  • ->name('posts.show') - іменований маршрут для генерації URL через route('posts.show', $post).
  • Route::resource(...) - одразу 7 RESTful-маршрутів для CRUD.

Переглянути всі зареєстровані маршрути: php artisan route:list.

Докладніше в документації: Маршрутизація

Схожі питання