在我的laravel/nova应用程序中,我需要设置如下内容:
例如:
| id | name | user_id |
|----|-------------|---------|
| 1 | POST1 | 1 |
| 2 | POST2 | 1 |
| 3 | POST3 | 2 |
在这种情况下,如果我们是id=1的用户,只需查看前两篇文章。
这很简单,我看了医生,用这个做的。
在相关模型中,我这样做:
public static function indexQuery(NovaRequest $request, $query)
{
if(auth()->user()->hasRole('admin'))
{
return $query;
}
if(!auth()->user()->hasRole('admin'))
{
return $query->where('user_id', auth()->user()->id);
}
}
..../resources/posts/3
我一定是看不见了,我需要403页。我应该把这份声明放在哪里?
public function view(User $user, Company $company)
{
return auth()->user()->hasRole(['supervisor', 'admin']);
}
这也不能解决问题。这些都是我尝试过的,只是没有展示出来。但我需要中止403或smt。
谁能帮帮我我会很高兴的。提前谢谢。