首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Django多选表单- TypeError: int()参数必须是字符串或数字,而不是'list‘

Django多选表单- TypeError: int()参数必须是字符串或数字,而不是'list‘
EN

Stack Overflow用户
提问于 2013-05-16 23:14:47
回答 1查看 1.4K关注 0票数 2

我有一个这样的表单:

代码语言:javascript
复制
class PartnerProductsForm(forms.Form):
    product = forms.ModelChoiceField(
        queryset=Product.objects.all(),
        widget=forms.CheckboxSelectMultiple(
            attrs={"checked": ""}
        ),
        empty_label=None,
    )

我的观点是:

代码语言:javascript
复制
...
product_form = PartnerProductsForm(request.POST or None)
    if product_form.is_valid():
        # do stuff

但是当我提交的时候,我得到了下面的错误:

代码语言:javascript
复制
TypeError: int() argument must be a string or a number, not 'list'

表单验证似乎需要一个int,但我当然会返回一个选中选项的列表。我该怎么处理这件事?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-05-16 23:33:58

您要查找的表单域是ModelMultipleChoiceField,而不是ModelChoiceField

票数 11
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16591282

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档