私は新しいプロジェクトを作成しています。私のメインページデザインでは、ユーザーがゲストの場合は2列、ユーザーがログされている場合は3列を表示する必要があります。symfonyにtwig埋め込みでログインした場合のデザインが異なります
私はTwig上でembed
関数を使用しようとしていますが、埋め込みTwig関数を使用しないでHTMLコードを複製することしかできません。
これは私のテンプレートです:
index.html.twig
{% extends 'base.html.twig' %}
{% block body %}
{% embed "home_columns" %}
{% if is_granted("IS_AUTHENTICATED_FULLY") %}
3 columns
{% else %}
2 columns
{% endif %}
{% endembed %}
{% endblock %}
home_columns.html.twig
{% block main_left_col %}
<aside id="left_column" class="col-md-2"> </aside>
{% endblock %}
{% block main_middle %}
<section id="last-plans" class="col-md-8"></section>
{% endblock %}
{% block main_right_col %}
<aside id="right_column" class="col-md-2"> </aside>
{% endblock %}
しかし、それは今働いている...
埋め込み twig機能は私がしたいことをする最も良い方法ですか?
埋め込み機能は正しい方法だと思います。このリンクは 'embed'、' include'と 'macro'の違いについて説明しています:https://github.com/twigphp/Twig/issues/1697 –