奏鸣曲和单页
Posted
技术标签:
【中文标题】奏鸣曲和单页【英文标题】:sonata and single page 【发布时间】:2017-04-27 20:56:31 【问题描述】:我是奏鸣曲的新手,
我有一个带有实体等的 ContentTestAdmin,它只能包含 4 条记录 - 记录 1 - 记录 2 - 记录 3 - 记录 4
我已经禁用了创建和删除功能
public function configureRoutes(RouteCollection $collection)
$collection->remove('create')->remove('delete');
但我需要更改仪表板和左侧菜单上的链接:
实际上我把我的 service.yml 放在了
admin.comuni:
class: AppBundle\Admin\ContentTestAdmin
arguments: [~, AppBundle\Entity\ContentTest, ~]
tags:
- name: sonata.admin, manager_type: orm, label: Content Test, group: Main Section
我在仪表板上看到标题为“内容”的框,在“内容测试”内看到了列表链接
我会抹去这部分,然后看看
内容测试 - 记录 1 个标题 > 带有指向 1/编辑的链接 - 记录 2 标题 > 带有指向 2/编辑的链接 - 记录 3 标题 > 带有指向 3/编辑的链接 - 记录 4 标题 > 带有指向 4/编辑的链接
左侧菜单也有同样的问题,一个名为 Content test 的文件夹,里面有 4 个链接
有可能吗?谢谢
【问题讨论】:
签出sonata-project.org/bundles/admin/master/doc/cookbook/…。如果它是压倒性的,覆盖模板。 SonataAdminBundle::standard_layout.html.twig 并添加您的自定义链接 【参考方案1】:您应该在 app/config.yml 中配置管理菜单。
这是一个例子:
sonata_admin:
dashboard:
groups:
content_test:
label: Content
icon: '<i class="fa fa-address-card"></i>'
items:
- route: 'route_to_record1'
route_params: id: 1 #id of record 1
label: Record 1
- route: 'route_to_record_2'
route_params: id: 2
label: Record 2
要找出记录的路径,请执行命令
app/console (bin/console on sf3) debug:router
这将向您显示您的应用程序中存在的所有路由,只需找到为您的 ContentAdmin 生成的路由奏鸣曲管理员用于显示或编辑或您需要的任何内容(例如:admin_content_test_show)。然后只需使用所需记录的 id 填充 route_params。
(您可以使用它来指向应用程序中的任何路由并预填充该路由的任何参数)
希望对您有所帮助
【讨论】:
非常有帮助!谢谢,在侧栏中它可以工作,但仪表板中没有链接,我该如何解决? 要编辑仪表板的内容,请查看standard_layout.html.twig。以上是关于奏鸣曲和单页的主要内容,如果未能解决你的问题,请参考以下文章