首页 > 解决方案 > 在 Django 中渲染一个简单的复选框的麻烦

问题描述

我尝试在 Django 中呈现一个简单的复选框(一个布尔复选框)。

表格.py

class Stateform(forms.Form):
     state = forms.BooleanField()

html

<form "..." method="post">{% csrf_token %}
<input type="checkbox">  
<label>{{ form }}</label>
</input>
</form>

视图.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)

它正确显示复选框,但我无法选中该框...

标签: pythondjangocheckboxboolean

解决方案


使用以下 html 代码:

<form action="..." method="post">
    {{ form }}
    <input type="submit" value="Submit">
</form>

此外, 的命名在Form某种程度上不是很具体,并且可能会误导Formfrom django.formswhich 在使用时会呈现为空形式。


推荐阅读