Laravel 5, аутентификация и отображение пользовательских ролей

Я очень плохо знаком с использованием сводных таблиц в Laravel, мои приложения никогда не были слишком сложными. Вот моя проблема.

Я настроил новый тестовый сайт, он имеет 3 таблицы.

пользователи
роли
USER_ROLE

В модели User я определил отношения с моделью Role как:

public function roles()
{
return $this->belongsToMany('App\Role');
}

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

Auth::user();

Сохраняя это очень простым, все, что я действительно хочу сделать, это отобразить роль или роли, которые есть у пользователя. Если я поставлю это в виде:

Aith::user()->roles;

Я получаю следующий результат

[{"id":"7","name":"Administrator","created_at":"2015-03-19      00:14:53","updated_at":"2015-03-19 00:14:53","pivot":{"user_id":"1","role_id":"7"}}]

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

Вместо приведенного выше результата я просто хочу, чтобы он отображался:

Administrator

Ничего более.

1

Решение

либо это чтобы получить первую запись

Auth::user()->roles->first()->name

или используйте цикл

@foreach(Auth::user()->roles as $role)
{{ $role->name }}
@endforeach
4

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]