Связывание модели Laravel - Часть 1.

Привязка модели, безусловно, одна из самых крутых вещей в Laravel.
Laravel автоматически вставляет экземпляр модели в ваш маршрут.

Привязка маршрута бывает двух видов:
1. Неявная привязка < br /> 2. Явная привязка

1. Неявное связывание:
Laravel автоматически разрешает модели Eloquent, соответствующие сегменту маршрута. Например,

Скажем, у меня есть модель под названием User и контроллер под названием UserController. Чтобы получить пользователя, я могу определить свой маршрут следующим образом:

В моем файле маршрутов web.php

Route::get(‘/user/{user}, [
    ‘uses’ => ‘UserController@show,
]);

Затем в моем контроллере UserController.php я могу:

public function show(User $user) {
    return view(‘show’, [‘user’ => $user]);
}

Помните, что до этого вам нужно было сделать:

public function show($id) {
    $user = User::findOrFail($id);
    return view(‘show’, [‘user’ => $user]);
}

Что ж, больше нет, амиго!

NOTE: From ‘/user/{user}’, the route param ‘{user}’ has to match the model name ‘User’

Вам также может быть интересно узнать, что Laravel выдает NotFoundException (404), если он не находит экземпляр модели
в базе данных.