2013-03-15 73 views
1

我用下面的代码此刻生成标签:的Jinja2和WTForms筑巢

{{ form.code.label(class="control-label required") }} 

注所需的类。 现在这是硬编码,但我想补充一点,动态地根据WTForms字段信息:

form.code.flags.required 

我想是这样

{{ form.code.label(class="control-label {% if form.code.flags.required 
%}required{% endif %}") }} 

,但它并没有奏效。 有没有办法解决这个问题?

回答

0

这个例子是行不通的,因为使用Jinja2不会将“{{}}”括号内的语法为模板的一部分,尽管它会尝试一些聪明的解析,试图弄清楚你想要什么(详细信息这里:http://jinja.pocoo.org/docs/templates/#variables)。

的最简单的方法是将外移动的逻辑:

{% if form.code.flags.required %} 
    {{ form.code.label(class="control-label required") }} 
{% else %} 
    {{ form.code.label(class="control-label") }} 
{% endif %}