根据用户角色在仪表板上显示项目

Ene*_*ari 6 php symfony symfony-sonata sonata-admin sonata-user-bundle

我是Symfony2的新手,为了满足我公司的需求,我正在使用Sonata Admin和User捆绑包.

我想知道是否可以根据已登录用户的角色隐藏或显示仪表板上的项目.

例如,我有几个由Sonata AdminBundle(用户,公司,任务,站点等管理)管理的实体,我想将用户管理仅显示给超级管理员,公司和站点管理到另一个角色(例如SITE_ADMIN)和第三个角色的任务.

你有没有遇到过这种情况?你能给我一个直接解决方案的解决方案或线索吗?

非常感谢,

埃内斯

Tau*_*kas 6

使用角色处理程序并仅启用与用户相关的权限,例如,Admins组(创建它).然后将管理员用户分配给管理员组.Sonata Admin将获取限制,并仅向管理员显示仪表板项目.

  • 是的,你必须在你的配置中设置`sonata_admin:security:handler:sonata.admin.security.handler.role`.然后,您将能够设置所需的角色以访问管理员的不同部分. (2认同)