1

我有一个像下面这样的表格

class Form(forms.Form):
   chr1 = forms.CharField(widget=forms.TextInput())
   email = forms.EmailField()
   chr2 = forms.CharField()

我的视图代码是这样的

def template(request):
    form = Form({})
    return render(request, 'mytemplate.html', {'form': form})

我的模板是这样的

{% for field in form.fields %}
{{ field.label_tag }}: {{ field }}
{% endfor %}

我希望这会输出一组输入字段。但是上面的代码片段给出了如下所示的输出

: chr1
: email
: chr2 
4

1 回答 1

2

根据此处的文档,您应该迭代表单对象本身而不是字段。所以不要使用form.fields,而是使用form。

{% for field in form %}
    {{ field.label_tag }}: {{ field }}
{% endfor %}

我刚刚也发现了这个重复的问题:django: form.fields not iterating through instance fields

于 2013-07-18T21:27:16.897 回答