行模板
编辑本页行模板
从Sonata-2.2开始,可以为列表操作的每行定义一个模板。默认模板是一个标准表,但在某些情况下,这种布局类型可能不适合。通过为行定义一个自定义模板,你可以将布局调整成这样:
菜谱
配置管理服务
方法在DIC中进行配置settemplate
方法。需要设置两个模板键:
inner_list_row
:要自定义的行模板。通常情况下,您会希望扩展它@SonataAdmin / CRUD / base_list_flat_inner_row.html.twig
base_list_field
:单元格的基本模板,默认为@SonataAdmin / CRUD / base_list_flat_field.html.twig
适用于大多数情况,但如果需要也可以定制。
- XML
12 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
<!--config/services.xml --><服务id=“sonata.admin.comment”类=“% sonata.admin.comment.class %”><调用方法=“settemplate”><论点类型=“收集”><论点关键=“inner_list_row”>@App / Admin / inner_row_comment.html.twig论点><论点关键=“base_list_field”>@SonataAdmin / CRUD / base_list_flat_field.html.twig论点>论点>调用><标签的名字=“sonata.admin”model_class=“% sonata.admin.comment.entity %”控制器=“% sonata.admin.comment.controller %”manager_type=“orm”集团=“sonata_blog”translation_domain=“% sonata.admin.comment.translation_domain %”标签=“评论”label_translator_strategy=“sonata.admin.label.strategy.underscore”/>服务>
创建自定义模板
定义模板后,创建模板来呈现行:
12 3 4 5 6 7 8 9 10 11 12 13 14 16 17 18 19 20
{# @App / Admin / inner_row_comment.html。树枝#}{#扩展默认模板,提供批处理和操作单元格{#以及有效的colspan计算#}{%扩展“@SonataAdmin / CRUD / base_list_flat_inner_row.html。嫩枝' %}{%块行%}{#你可以使用Admin类中定义的字段{{object|render_list_element(admin.list['name'])}}-{{object|render_list_element(admin.list['url'])}}-{{object|render_list_element(admin.list['email'])}}<br/><小>{#或者你可以使用object变量来呈现一个属性#}{{对象。消息}}小>{%endblock%}
虽然这个特性很适合生成丰富的列表,但您可以破坏布局和管理特性,如批处理和对象操作。最好熟悉默认模板,并在可能的情况下扩展它们,只更改需要定制的内容。
此工作,包括代码示例,是根据创作共用BY-SA 3.0许可证。