Sonata admin Dashboard Block Roles

时间:2016-04-16 12:10:53

标签: symfony sonata-admin

我为其中一个名为STUDY的管理实体创建了一个自定义仪表板块,列表。

  • 安全处理程序:sonata.admin.security.handler.role
  • 角色存储在数据库中供用户使用。 (用户所属的组)

我希望仅当用户具有Study管理实体的LIST角色时才显示此块。

我的config.yml

dashboard: blocks: position: left type: nzgui.app.block.status, roles: [ROLE_SONTATA_ADMIN_STUDIES_LIST]

然而,这不起作用,即使对于超级管理员用户也不显示该块。

查看模板,使用twig中的is_granted(角色)代码调用来检查角色。在侧边栏中,使用item.extra('admin')。isGranted('LIST')检查角色并正常工作。

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

好的,解决它相当愚蠢。 ROLE_SONTATA_ADMIN_STUDIES_LIST中的拼写错误,将其更正为ROLE_SONATA_ADMIN_STUDIES。

但是,对于admin用户,还必须另外提供ROLE_ADMIN。