Лаб. работа "Создание маршрутов в Laravel"
Лабораторная работа “Создание маршрутов в Laravel”
Теория
Установка
composer create-project laravel/laravel <project-name>
Запуск
php artisan serve --port=<port>
Создание маршрута
Маршруты описываются в файле routes/web.php
1Route::get('/', function () {
2 return view('welcome');
3});
Маршрут с параметром
1Route::get('/user/{id}', function ($id) {
2 return 'User ID: ' . $id;
3});
Создание контроллера
php artisan make:controller UserController
где UserController – название вашего контроллера
Контроллеры хранятся в папке app/Http/Controllers
пример контроллера UserController.php:
1<?php
2
3namespace App\Http\Controllers;
4
5use App\Models\User;
6use Illuminate\View\View;
7
8class UserController extends Controller
9{
10 /**
11 * Show the profile for a given user.
12 */
13 public function show(string $id): View
14 {
15 return view('user.profile', [
16 'user' => User::findOrFail($id)
17 ]);
18 }
19}
Использование контроллера
1use App\Http\Controllers\UserController;
2
3Route::get('/user/{id}', [UserController::class, 'show']);
где show – название метода в контроллере.
Группировка маршрутов
1Route::prefix('admin')->group(function () {
2 Route::get('users', function () {
3 // Matches /admin/users
4 });
5 Route::get('orders', function () {
6 // Matches /admin/orders
7 });
8});
Задания
Создайте новый проект
Создание базового маршрута:
- Создайте маршрут, который возвращает строку “Привет, мир!”.
- Убедитесь, что этот маршрут доступен по URL-адресу
/hello.
Передача параметров через маршрут:
- Создайте маршрут, который принимает параметр
{name}. - Верните строку “Привет, {name}!”, где
{name}- это переданный параметр. - Проверьте, что этот маршрут работает, переходя по URL-адресу
/hello/Ваше_имя.
- Создайте маршрут, который принимает параметр
Использование контроллера:
- Создайте контроллер с именем
HelloController. - Добавьте метод
index, который возвращает строку “Привет, мир!”. - Создайте маршрут, который вызывает метод
indexэтого контроллера.
- Создайте контроллер с именем
Работа с несколькими маршрутами:
- Создайте маршрут, который возвращает строку “Это страница о нас”.
- Убедитесь, что этот маршрут доступен по URL-адресу
/about. - Создайте маршрут, который возвращает строку “Это страница контактов”.
- Убедитесь, что этот маршрут доступен по URL-адресу
/contact.
Группировка маршрутов:
- Создайте группу маршрутов с префиксом
/admin. - В этой группе создайте маршрут, который возвращает строку “Это административная панель”.
- Убедитесь, что этот маршрут доступен по URL-адресу
/admin/dashboard.
- Создайте группу маршрутов с префиксом
Работа с различными методами HTTP:
- Создайте маршрут, который принимает запросы только методом
GET. - Создайте маршрут, который принимает запросы только методом
POST. - Проверьте работу обоих маршрутов с использованием инструментов для отправки запросов (например, Postman).
- Создайте маршрут, который принимает запросы только методом