如何创建自定义laratrust权限以根据用户区域过滤客户?
我在Laravel 5.4中使用laratrust来提供对客户数据库的访问。
目前,我的客户索引将通过以下方式显示基于用户电子邮件的记录:
$customers = Customer::with('orders')->orderBy('created_at', 'desc')->where('owner', Auth::user()->name)->get();
我需要根据与角色和权限相关联的用户区域来过滤客户索引。
区域基于邮政编码,我有一个雄辩的关系设置,可根据区域表中的邮政编码将客户分配到某个区域。
我有laratrust权限和角色的表格和模型,只需要知道什么放入播种机。
我能做点什么吗?
'administrator' => [
'region' => '1,2,3,4',
'profile' => 'r,u'
],
然后
$customers = Customer::with('orders', 'regions', 'roles')->orderBy('created_at', 'desc')->where('roles.name','=','administrator')->get();