在EasyAdmin中管理菜单权限

时间:2018-08-16 17:10:51

标签: php symfony twig symfony2-easyadmin easyadmin

我正在使用Symfony 4,并且我想根据角色在菜单中显示/隐藏我的实体,但这是不可能的。

例如,我尝试覆盖EasyAdmin文件的menu.html.twig,但无法正常工作。

仅当我直接在EasyAdmin库中修改循环时,此方法才有效,但这是一个坏习惯。

2 个答案:

答案 0 :(得分:2)

如果要覆盖EasyAdmin模板,请创建目录./templates/easy_admin并将模板放入其中。

以您为例,只需创建./templates/easy_admin/menu.html.twig,它将覆盖默认菜单

答案 1 :(得分:1)

尝试使用软件包alterphp/easyadmin-extension-bundle 它提供了此功能

https://packagist.org/packages/alterphp/easyadmin-extension-bundle

easy_admin:
        menu:
            - { label: 'Administrator', role: ROLE_SUPER_ADMIN } # Hidden if user is not granted ROLE_SUPER_ADMIN
            - { label: 'App action', route: 'app_action', role: ROLE_ADMIN } # Hidden if user is not granted ROLE_ADMIN