文档说,要在模板中显示表单字段,我需要这样做:
<form action="/search_for_book/">{% csrf_token %}
{{form.as_p}}
<input type="submit" value="Suchen" />
</form>
我这样做了。这是我的看法。
def addbook(request):
form = AddBook()
return render(request,'searchbook.html',{'form':form})
这是我的表格。在forms.py中定义并导入到views.py
中class AddBook(forms.Form):
titel = forms.TextInput()
author = forms.TextInput()
为什么表格字段不会显示在模板中?我几乎从文档中做了1:1的复制。模板仅显示按钮Suchen
,而不显示任何其他内容。 Docs对Urlconf没有任何说法,我还必须做吗?
答案 0 :(得分:4)
原因是你要定义一个小部件,它只是一个HTML输入元素的表示,而不是在你的form.py中定义一个字段。
请执行以下操作:
class AddBook(forms.Form):
titel = forms.CharField(widget=forms.TextInput())
author = forms.CharField(widget=forms.TextInput())
PS:不要责怪django的文档 - 他们真的很棒!