gpt4 book ai didi

python - Django 多选字段验证

转载 作者:太空宇宙 更新时间:2023-11-03 16:20:36 25 4
gpt4 key购买 nike

问题是我的表单类中有几个多选字段,它们无法传递 view.py 中的 is_valid 方法。

Forms.py

class SearchForm(forms.Form) : 
LIMIT_OPTIONS = (('5', '5'),
('10', '10'),
('15', '15'),
('20', '20'))
keyword = forms.CharField(max_length=50)
limit = forms.MultipleChoiceField(widget=forms.Select, choices=LIMIT_OPTIONS)

View.py

class IndexView(View) : 
form_class = SearchForm
template_name = 'web/index.html'
def get(self, request) :
form = self.form_class(None)
return render(request, self.template_name, {'form':form})

def post (self, request) :
form = self.form_class(request.POST)
if form.is_valid():
url = '****'

keyword = form.cleaned_data['keyword']
limit = form.cleaned_data['limit']

userupload = {'keyword': keyword, 'limit': limit}

response = requests.post(url, json = userupload)

return HttpResponse(response)
return HttpResponse('<h1>Error</h1>')

如果我将 MultipleChoiceField 更改为 CharField 则一切都很好......

我在互联网上查找,找不到任何相关答案......

注意:我不使用任何数据库或模型(以防万一它很重要)

感谢您的帮助。

最佳答案

MultipleChoiceField 的默认小部件是 SelectMultiple .

Similar to Select, but allows multiple selection: ...

您已将表单中的内容更改为 forms.Select。这就是结果。

关于python - Django 多选字段验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38515921/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com