繁体   English   中英

Sonata管理员操作按钮到预过滤列表

[英]Sonata Admin Action Button to Pre Filtered List

我对Symfony很新(2周),所以请原谅我的无知。

我正在尝试添加一个自定义操作按钮,该按钮将链接到RELATED实体的预过滤列表。 我做了很多研究,但似乎找不到我需要的东西。

目前我有两个实体书籍和作者与manyToOne关系船。 我以通常的方式在Sonata Admin中设置了这些,并且一切正常。 我甚至在书籍列表页面上有一个作者过滤器,我希望可以利用它来实现我的目标。

在“作者”列表视图中,我想在“查看和编辑”旁边的每一行上添加一个操作按钮,称为“按作者查看书籍”。 我可以获取按钮但无法正确构建URL。

我有3个问题与路由:

1)我试图在我的按钮模板中使用admin.generateObjectUrl()或类似物来干净地构建管理URL但无法获得备用实体的路径。 就我而言,由于我目前正在查看作者,因此链接始终指向作者实体,而不是我想要的书籍。

2)我不确定如何获取当前作者的id以将其传递给过滤器

3)我不确定如何干净地构建过滤器查询字符串参数。 如果有必要,我可以手工完成:bookEntityListPath +“?filter [author] [value] [] =”+ $ authorID但显然这不是那么干净,如果可能的话我更喜欢更好的方法。

提前致谢!!!

我有同样的问题,当我找不到答案时开始尝试一些代码。 使用path()twig方法(路径到路径转换),可以很容易地创建这样的链接。

请参阅此文档: http//symfony.com/doc/current/book/routing.html#generating-urls-from-a-template

您的链接看起来像这样:

<a href="{{ path('admin_application_book_list', {
  'filter[author][value]': object.id  
}) }}" class="btn btn-small">

使用'admin_application_book_list'作为书籍列表的路径(bookEntityListPath?),将object.id作为作者的id(在该实体的详细信息或编辑模板中具有名称对象)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM