【发布时间】:2016-12-08 14:54:54
【问题描述】:
我想在某些自定义实体中隐藏 Sonata Admin 上的“下载”按钮。如何隐藏/删除它?
如果我覆盖 base_list.html.twig 并从 table_footer 中删除下载按钮,它会消失所有实体列表。有什么办法可以在 Admin 类中隐藏它?
【问题讨论】:
标签: symfony sonata-admin sonata
我想在某些自定义实体中隐藏 Sonata Admin 上的“下载”按钮。如何隐藏/删除它?
如果我覆盖 base_list.html.twig 并从 table_footer 中删除下载按钮,它会消失所有实体列表。有什么办法可以在 Admin 类中隐藏它?
【问题讨论】:
标签: symfony sonata-admin sonata
我通过管理用户角色解决了这个问题。例如:
您想删除帖子部分中的下载按钮。所以你需要在app/config/security.yml中添加以下代码
security:
role_hierarchy:
ROLE_PUBLISHER:
- ROLE_ADMIN_POST_CREATE
- ROLE_ADMIN_POST_EDIT
- ROLE_ADMIN_POST_LIST
- ROLE_ADMIN_POST_VIEW
- ROLE_ADMIN_POST_EXPORT #If you comment or delete this line. Download button don't show in Sonata Post List.
【讨论】:
您可以通过删除相应的路由来隐藏“下载”按钮:
class YourClass extends AbstractAdmin {
public function configureRoutes(RouteCollection $collection) {
$collection->remove('export');
}
}
【讨论】: