我有一个实体"车辆",它与另一个实体 - "部门"有ManyToOne连接。我可以将"部门"属性设置为用户。我希望该用户(具有ROLE_DEPARTMENT_MANAGER角色)只能查看(列出、创建、删除等)他自己部门的车辆。
使用角色时,我可以限制对特定操作的访问。我想我应该使用 ACL,但我不确定该怎么做以及 Sonata 管理员的行为方式。
我在这里发现了类似的问题,但没有人回答它:Sonata 管理捆绑包过滤器显示角色用户的实体
你能告诉我如何在Sonata管理捆绑包中做到这一点吗?
您可以自定义用于在 VehicleAdmin 类中生成列表的查询:
http://sonata-project.org/bundles/admin/master/doc/reference/action_list.html#customizing-the-query-used-to-generate-the-list