2016-10-13 1 views
1

Ich müsste einige Daten aus meinem manuell generierten Formular an die Vorlage übergeben und müsste das Vorhandensein dieser Informationen dort überprüfen.Überprüfen auf Widget-Attribut in Django-Vorlagen

ich meine Form als solche (im __init__ Teil) zu erzeugen:

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'})) 

Was ich tun möchte, in der Vorlage ist zu prüfen, ob das Attribut something gesetzt ist, und wenn ja, zeige seinen Wert an (im obigen Beispiel: test).

Irgendeine Idee?

Ich habe versucht, mit {{ field.attribute }} nach Access form field attributes in templated Django und die folgenden:

{% for field in form %} 
    {{ field.label_tag }} {{ field }} 
    {{ field.widget.attrs.something }} 
{% endfor %} 

... aber das funktioniert nicht (invalid).

Letztlich möchte ich etwas tun, ähnlich wie:

{% if field.widget.attrs.something %}{{ field.widget.attrs.something }}{% endif %} 

Antwort

0

Das

{{ field.field.widget.attrs.something }} 
wäre