1 つの div セクションの下にある私のbase.html.twigファイルでは、render 関数がSession ControllerとeditActionで呼び出され、次にedit.html.twigをレンダリングします。
<div class="container">
{{ render(controller("DefaultBundle:Session:edit", {'id':session.id})) }}
</div>
edit.html.twig : _
{{ form_start(form) }}
{{ form_errors(form) }}
<div>
<p>Fill in the form below to change the data:</p>
<div class="session_form">
{{ form_label(form.title) }}
{{ form_widget(form.title) }}
<div id="form_options">
{{ form_rest(form) }}
</div>
<button class="btnSave">Save</button>
</div>
</div>
{{ form_end(form) }}
これはすべて正常に動作しますが、状況によっては、editAction のルートに基づいて、フォーム内のエンティティを編集するために edit.html.twig ファイルが表示されます。上記のように、ルートを必要とせずに直接レンダリングできます。 editAction の場合。これは、テンプレートが継承されず、基本的なフォームを持つプレーンなスタイルになることを意味します。「{% extends 'DefaultBundle::base.html.twig' %}」を使用することもできますが、これは、テンプレートが基本的に 1 つのページに 2 回表示されることがあることを意味し、これは見栄えが悪く実用的ではありません。render(controller{}) が使用されているかどうかに応じて base.html.twig を拡張する方法はありますか?