Волшебный метод Laravel для отношений возвращает неверную связанную модель - PullRequest
0 голосов
/ 04 июня 2019

В моей системе у меня есть роль :: класс:

{id: 1, name: "admin"}
{id: 2, name: "user"}

Отношения с пользователем: класс:

public function role()
{
 return $this->belongsTo(Role::class);
}

У данного пользователя есть внешний ключ role_id = 2.

Проблема в том, что когда я пишу:

Auth::user()->role

Я получаю ролевую модель с идентификатором 1 (admin), но когда я пишу:

Auth::user()->role()->first()

Я получаю правильный результат - идентификатор 2 (пользователь)

  • Я посмотрел на необработанный запрос, все в порядке
  • привязки верны

1 Ответ

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

Как насчет дела?

Auth::user()->role()->first()->id

Хотя на этом лучше использовать энергичную нагрузку, но это должно сработать.

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