Есть три таблицы:
users
(с полями
id и
login),
roles
(с полями
id,
name и
slug) и третья для связи
role_user
(с полями
role_id и
user_id). Как получить все значения из связанной таблицы?
В файле модели
User
прописана связь:
public function roles()
{
return $this->belongsToMany(Role::class, 'role_user', 'user_id', 'role_id');
}
В файле модели
Role
прописана связь:
public function users()
{
return $this->belongsToMany(User::class, 'role_user', 'role_id', 'user_id');
}
В файле
UserController
пытаюсь получить значения:
$users = User::with('roles')->get();
dump($users->roles);
В итоге получаю
ошибку:
Property [roles] does not exist on this collection instance.
p.s. Получение по
id значения через
find(id)
работает. Пробовал получить значения через
$user->pivot
, но в результате та же ошибка, только для
pivot
. Аналогичная ошибка в
RoleController
. Почему я получаю эту ошибку и как получить все значения для связанной таблицы?