我正在尝试根据本教程自定义表单模板。据我了解,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
, data-items
, 等等,因为它包含"-"
字符。如果我改为data-provide
,dataprovide
jinja2 引擎可以很好地渲染代码。
但是,在bootstrap typeahead
javascript 中,所有变量都定义为data-provide
, data-items
。如果我将它们更改为dataprovide
, dataitems
,javascipt 将停止工作。
请给我一个解决方案: - 如何让 jinja2 接受具有“-”的属性 - 其他解决方案,建议