Laravel 5,验证和显示用户角色


Laravel 5, authenticating and displaying user roles

我对使用透视表非常陌生,更不用说在Laravel中了,我的应用程序从来没有太复杂过。这是我的问题。

我已经设置了一个新的测试站点,它有3张表。

用户
角色
用户角色

在用户模型中,我将与角色模型的关系定义为:

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

没什么了。

这其中之一可以获得第一条记录

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

或者使用环路

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