私はSymfonyフォームで使用するいくつかの「ウィジェット」を持っています。これらは、日付ピッカーフィールド、カラーピッカーフィールド、ファンシーコンボボックスなどです。私はそうのように、別の小枝ファイル内の各1のテンプレートを保つ:新しいブロックをTwigテンプレートに追加する
# start of color_widget.html.twig
{% block color_widget %}
<div id="{{ id }}" class="input-group colorpicker-component">
<span class="input-group-addon"><i></i></span>
<input type="text" {{ block('widget_attributes') }} {% if value is not empty %}value="{{ value }}" {% endif %} class="form-control" />
</div>
<script>
$(function() {
$('#{{ id }}').colorpicker();
});
</script>
{% endblock %}
# end of color_widget.html.twig
さて、現在の設定では、私はすべてのことを維持する必要があります一つの大きなテンプレート内のブロック。しかし、これらの別々のファイルから定義されたブロックを含めるためにループを作りたいと思います。
{% for widget in _widgets %}
{% use widget.path %}
{% endfor %}
しかし、使用などのタグは、それが動作しない変数をサポートしていません。このようなもので
{% use "@CoreWidgets/color/widget.html.twig" %}
{% use "@CoreWidgets/date_picker/widget.html.twig" %}
{% use "@OtherWidget/widget.html.twig" %}
:基本的に私はこれを代入しようとしています。
私は、CSS、JS、Twigテンプレート(フォーム要素用とエンティティ情報を示すページ要素用)の1つの場所に格納する素晴らしいウィジェットパッケージを用意したいので、このようなアプローチが欲しいです。それから設定ファイルにそのパッケージを定義し、すべてをきちんと設定して保存することができました。
これを行う方法はありますか?