嵌套块

嵌套块

问题描述:

我想建立这样的节目来看,与奏鸣曲:嵌套块

+---------------------------------------------------+ 
| PAGE           | 
|             | 
| +---------------------------+ +-----------+ | 
| | BLOCK 1     | | BLOCK 2 | | 
| | +--------+ +-------+ | |   | | 
| | | 1.1 | | 1.2 | | |   | | 
| | |  | |  | | |   | | 
| | |  | |  | | |   | | 
| | |  | |  | | |   | | 
| | +--------+ +-------+ | |   | | 
| +---------------------------+ +-----------+ | 
|             | 
+---------------------------------------------------+ 

我知道你可以构建块1及块2“有()”方法,但我没有看到任何方法在BLOCK 1中嵌套BLOCK 1.1和1.2。我不想使用标签,我希望在同一页面上显示所有内容。

任何方式嵌套超过1级块?

+0

我从来没有试过这个。您可以尝试覆盖Sonata管理包的CoreController和模板(如果我们正在谈论仪表板,如果不是在您自己的控制器中创建渲染逻辑)并创建一些自己的渲染块逻辑。 –

好的。你有表演动作。你使用的是两块(I mean ->with())。 你也有在两个块不同的领域。您可以覆盖其中一个字段的模板,以及该模板中您想要的任何内容。您可以使用奏鸣曲作品->with()制作事件创建块(带奏鸣曲样式),看起来像是thous。

奏鸣曲管理:

->with('Block1') 
    ->add('your_field', null, [ 
      'required' => false, 
      'template' => 'AppBundle::Admin\path_to_your_template\show_some_field.html.twig', 
    ]) 
->end() 

而且你的模板:

{% extends 'SonataAdminBundle:CRUD:base_show_field.html.twig' %} 

{% block field %} 
    {# Make here whatever you want #} 
    {{ object.your_field }} 
{% endblock field%} 

我可以提出一个样本,如果你会需要它。