gpt4 book ai didi

python - 表单中的 Django 数组值

转载 作者:太空狗 更新时间:2023-10-30 00:08:00 25 4
gpt4 key购买 nike

我可以在表单中提交标签。提交表单后,我看到:

tags=['3','4','5']

标签值是用户选择的 ID。我能够从 request.POST 对象中获取值,一切正常。问题是用户必须至少选择一个标签。我想在 Django 表单中进行验证,但我不确定在 Django 表单中提供什么样的表单字段值?通常我使用 CharFieldDateField 等。但是获取数组值存在什么?然后我可以为它提供一个 clean 函数。谢谢!

最佳答案

试试 django.forms.MultipleChoiceField()。参见 https://docs.djangoproject.com/en/dev/ref/forms/fields/#multiplechoicefield

known_tags = (
(1, 'Choice 1'), (2, 'Choice 2'), (3, 'Choice 3'),
(4, 'Choice 4'), (5, 'Choice 5'))

class MyForm(django.forms.Form):
tags = django.forms.MultipleChoiceField(choices=known_tags, required=True)

编辑 1:

如果你想做的是把一个文本域变成一个数组...

class MyForm(django.forms.Form):
tags = django.forms.CharField(required=True)

def clean_tags(self):
"""Split the tags string on whitespace and return a list"""
return self.cleaned_data['tags'].strip().split()

关于python - 表单中的 Django 数组值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11705621/

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