我有一个可以有多个评论的Post实体。我想在帖子列表视图中显示指向新列的评论链接。
为此我已经定义了一个将在Post列表生成器中使用的路由。
admin_post_comments:
prefix: /admin
path: /post/{post_id}/comment/list
protected function configureListFields(ListMapper $listMapper)
{
$listMapper
->addIdentifier('title', null, array('label' => 'Title'))
->add('comments', 'url',
array('label' => 'Comments',
'route' => array(
'name' => 'admin_post_comments',
'parameters' => array('post_id' => 'post.id')
)));
}
但是如何获得实际的"帖子ID"对于每一行,为了生成正确的ur?现在,URL将是" /post/post.id/comment/list"但需要是" / post / 1 / comment / list"
当我选择"评论"作为列字段类型,该字段保持为空。我怎样才能写出"查看评论"?
谢谢,
亨德里克
答案 0 :(得分:1)
我认为您无法以这种方式访问此信息。但是,如果您以这种方式定义字段模板:
->add('comments', 'url', array(
'label' => 'Comments',
'template' => ':list:list.template.comments.html.twig'
))
另一方面,您可以使用链接定义树枝,如果需要,还必须包含注释计数。像这样的东西:
<td class="sonata-ba-list-field sonata-ba-list-field-{{ field_description.type }}" objectId="{{ admin.id(object) }}">
{{ path(admin_post_comments, {'id': object.id}) }}<span class="badge"">{{ object.comments|length }}</span>
在此TWIG中,您可以访问admin,object(帖子),值和许多其他变量