我尝试在Django中渲染一个简单的复选框(一个布尔复选框)。
form.py
class Stateform(forms.Form):
state = forms.BooleanField()
HTML
<form "..." method="post">{% csrf_token %}
<input type="checkbox">
<label>{{ form }}</label>
</input>
</form>
view.py
def Defstate(request, *args):
if request.method =='POST':
form = Stateform(request.POST)
if form.is_valid():
...
else :
form = Stateform()
context = {
'form': Stateform(),
}
return render(request, 'Page1/Page3.html', context)
它正确显示了复选框,但我无法选中复选框...
答案 0 :(得分:0)
使用以下HTML代码:
<form action="..." method="post">
{{ form }}
<input type="submit" value="Submit">
</form>
同样,Form
的命名在某种程度上并不是非常具体,可能会误导Form
来自django.forms
,这会在使用时呈现为空格式。
答案 1 :(得分:0)
我终于找到了问题!
使用<label>
时,您必须定义一个ID,它应与<input>
相同。
喜欢:
<input id="id_1" type="checkbox">
<label for="id_1">
{{ form }}
</label> </input>