Вместо идентификатора столбца, как использовать другой столбец БД для моего маршрута - PullRequest
1 голос
/ 04 июня 2019

У меня есть этот маршрут:

Route::get('subscribers/{subscriber}', 'SubscriberController@show');

В методе show моего контроллера я хочу, чтобы он использовал email в качестве просмотра моей таблицы вместо значения по умолчанию id.Возможно ли это?

public function show(Subscriber $subscriber)
{
    // I need this to do like
    // $subscriber = Subscriber::findOrFail(<email>);
    //
    // instead of the default
    // $subscriber = Subscriber::finaOrFail(<id>);

    return $subscriber;
}

Я пытался найти ответ здесь, в StackOverflow, но мои ограниченные знания о Laravel не позволяют мне использовать правильные ключевые слова.

1 Ответ

3 голосов
/ 04 июня 2019

Добавьте следующий метод к вашей Subscriber модели.

public function getRouteKeyName()
{
    return 'email';
}

Подробнее о Связывание модели маршрута можно прочитать в документации Laravel.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...