このチュートリアルに基づいて、フォーム テンプレート ベースをカスタマイズしようとしています。私が理解render()
しているように、タグにいくつかの属性を追加するだけです。たとえば、追加するplaceholder = "abc"
とうまく機能します。
{% call inserttourbus(id = "formAddNewRow" ) %}
<div class="fieldWrapper">
{% if inserttourbus['bustype'].label() %}Bus Type{% endif %}
{{ inserttourbus['bustype'].render(placeholder="abc")|safe }}
{% if inserttourbus['bustype'].errors() %}Not filled yet!{% endif %}
</div>
{% endcall %}
ここに私の問題があります: -bootstrap typeahead
テンプレートに使用するため、次の属性をinserttourbus
テキストボックスに追加する必要があります
data-provide="typeahead" data-items="4" data-source='["Alabama","Alaska"]'
だからこうなる
{{ inserttourbus['bustype'].render(placeholder="abc", data-provide="typeahead", data-items="4", data-source='["Alabama","Alaska"]')|safe }}
しかし、jinja2エンジンは、文字が含まれているためdata-provide
、、などを受け入れないようです。に変更した場合、jinja2 エンジンはコードを適切にレンダリングできます。data-items
"-"
data-provide
dataprovide
ただし、bootstrap typeahead
javascript では、すべての変数が , として定義されdata-provide
ますdata-items
。それらをdataprovide
,に変更するとdataitems
、javascipt が機能しなくなります。
解決策を教えてください: - jinja2 が "-" を持つ属性を受け入れるようにする方法 - その他の解決策、アドバイス