laravel使用具有多对多关系透视表的策略

laravel使用具有多对多关系透视表的策略,laravel,Laravel,由于多对多关系使用透视表,如何在多对多关系中设置策略 ||laravel版本6|| 示例:MainTable[公司和用户]数据透视表[公司和用户] 以查看策略为例: public function view(User $user,Company $company) { return $user->companys()->company_id == $company->id; } 规则:(只有属于公司的用户才能查看) 目前上述代码不起作用 我无法在google或其自身

由于多对多关系使用透视表,如何在多对多关系中设置策略 ||laravel版本6|| 示例:MainTable[公司和用户]数据透视表[公司和用户]

以查看策略为例:

 public function view(User $user,Company $company)
{
    return $user->companys()->company_id == $company->id;
}
规则:(只有属于公司的用户才能查看) 目前上述代码不起作用
我无法在google或其自身的文档中找到示例,因为大多数示例都是Post和User,它们不包含透视表。

您可以使用
pulk()
contains()
收集方法的组合

public function view(User $user, Company $company)
{
    return $user->companys->pluck('id')->contains($conpany->id);
}
拔毛:


包含:

它正在工作,但返回false:403此操作未经授权。对所有人来说,即使用户是公司的成员,仍然返回false。