检查 Django 模板中的小部件属性

Sae*_*aeX 4 django django-templates

我需要将一些数据从手动生成的表单传递到模板,并且需要检查该信息是否存在。

我正在生成这样的表单(在该__init__部分中):

for i in days_in_month:
    self.fields["info_%s" % i] = forms.ChoiceField(label="%s" % i.strftime("%a %d-%m-%Y"), 
    required=False, 
    choices=Information._meta.get_field('info').choices, 
    widget=forms.Select(attrs={'something': 'test'}))
Run Code Online (Sandbox Code Playgroud)

我想做的是在模板中检查该属性是否something已设置,如果是,则显示其值(在上面的示例中:)test

任何想法?

我尝试{{ field.attribute }}按照模板化 Django 中的 Access 表单字段属性和以下内容进行操作:

{% for field in form %}
    {{ field.label_tag }} {{ field }}
    {{ field.widget.attrs.something }}
{% endfor %}
Run Code Online (Sandbox Code Playgroud)

...但这不起作用( invalid)。

最终我想做类似的事情:

{% if field.widget.attrs.something %}{{ field.widget.attrs.something }}{% endif %}
Run Code Online (Sandbox Code Playgroud)

ale*_*nst 6

那将是

{{ field.field.widget.attrs.something }}
Run Code Online (Sandbox Code Playgroud)