[Django] [MultipleChoiceField]将复选框值传递给服务器

时间:2016-06-14 01:20:52

标签: python django forms checkbox multiplechoicefield

你能让我知道如何将我的复选框值传递给服务器吗?
views.py

def viewtest(request):
    if request.method == "POST":
        form=testForm(request.POST)
        if(form.is_valid():
            form.save()
    elif request.method == "GET":
        form=testForm()
    return render(request,"test/register.html",{"testform":form})

forms.py

class testForm(forms.ModelForm):
    workday=forms.MultipleChoiceField(widget=forms.CheckboxSelectMultiple(), choices=workdayType)
    class Meta:
        model=test
        fields=('name','tel')

register.html

 <table>
    <form method="post" action="{% url "viewtest" %}">
        {{testform.as_table}}
    </form>
    <input type="submit" value="register"/>
  </table>

我可以看到下面的复选框 enter image description here

但在服务器上,看不到多个数据。你能给我一些想法吗?

1 个答案:

答案 0 :(得分:-1)

我的傻事。因为我已经使用POST数据作为request.POST ['workday']。那是错的。我应该使用form.cleaned_data.get(“workday”)。这是我的解决方案。但不知道有什么不同。