在Djang中呈现简单复选框的问题

2024-10-04 11:33:20 发布

您现在位置:Python中文网/ 问答频道 /正文

我尝试在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)

它显示正确的复选框,但它是不可能的,我要检查框。。。你知道吗


Tags: djangopyforminputifrequesthtmlcontext
2条回答

我终于找到问题了!你知道吗

当您使用<label>时,您必须定义一个id,并且它应该与<input>相同。你知道吗

比如:

<input id="id_1" type="checkbox">
<label for="id_1">
{{ form }}
</label> </input>

使用以下html代码:

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

而且Form的命名在某种程度上不是很具体,并且可能与来自django.formsForm产生误导,在使用时会呈现为空形式。你知道吗

相关问题 更多 >