集合类型内联模板
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了集合类型内联模板相关的知识,希望对你有一定的参考价值。
我想为我的内联集合创建一个自定义模板,因为内联不适合。我正在努力弄清楚如何获得自定义模板来呈现。
我尝试添加一个模板,然后使用template
作为该字段的属性,这不起作用。
->add('pictures', CollectionType::class, [
'by_reference' => false,
'label' => false,
], [
'edit' => 'inline',
'inline' => 'table',
'template' => 'admin/picture/test.html.twig'
])
我的模板用于自定义管理员编辑等模板/ admin /中的网站
我还将方法getFormTheme()
添加到集合使用的管理员,并添加了转储和死亡,以查看它是否被调用,它不会转储和死亡。
// PicutreAdmin.php
public function getFormTheme()
{
return array_merge(parent::getFormTheme(), [
'admin/picture/test.html.twig'
]);
}
注意我希望此模板仅适用于此特定集合,而不是我正在使用的其他集合。
答案
您可以覆盖管理员模板,如此处所示https://sonata-project.org/bundles/admin/master/doc/reference/templates.html扩展它并使用此处描述的策略https://symfony.com/doc/4.0/form/form_customization.html如何自定义单个字段
但请注意,Sonata为所有表单元素名称添加了自定义前缀,因此您必须弄清楚该集合的命名方式,您可以通过调试表单块来实现这一点,本文可能会帮助您https://blog.bouzekri.net/2015-02-06-symfony-tips-find-form-theme-override-block-name.html
以上是关于集合类型内联模板的主要内容,如果未能解决你的问题,请参考以下文章