【发布时间】:2017-10-01 21:08:16
【问题描述】:
我正在与 Laravel 和 Entrust 合作,基本工作正常。我确实有一个问题似乎没有随包裹一起提供。我想要的是,当我执行Auth::user() 时,如果他们已登录,它也会返回他们的角色。目前我知道我可以做到Auth::user()->roles,但要做到这一点,我需要先检查他们是否是用户。我想有一种更简单方便的方法,因为当您返回 auth 用户时,您也会获得角色。
这是我目前设置 head.blade.php 文件的方式
<?php if( Auth::user() ){ $roles = Auth::user()->roles()->get(); }else{$roles = null;} ?>
<!-- global config -->
<script>
window.Laravel = {!! json_encode([
'csrfToken' => csrf_token(),
'stripeKey'=> config('services.stripe.key'),
'user'=> Auth::user(),
'roles' => $roles,
]) !!};
</script>
甚至不需要角色对象而是通过window.Laravel.user.roles访问会简单得多
【问题讨论】: