【发布时间】:2017-04-12 10:56:31
【问题描述】:
我正在为我的班级使用投票系统。我使用model-form 和create-view 提供投票表格。我在该字段中使用choices,但我发现create-view 只保存复选框的最后一个值,我可能想将所有选定的选项保存为一个列表。我尝试更改 form_valid() 方法,但我发现我需要迭代所有字段以检查是否有多种选择。它不灵活。而且我想不出其他解决方案...
我怎样才能满足这个要求?我真的是一个新手..
提前致谢。
感谢下面的朋友在我提出问题后在这么短的时间内回复。这是我的代码。
models.py
CHOICES = (('m','Math'),('f','French'),('s','Science'),('l','literature'))
class Poll(models.Model):
[...]
subject = models.CharField(max_length = 5,choices = CHOICES, blank=True)
[...]`
forms.py
class PollForm(forms.ModelForm):
model = Poll
fields = [..., 'subject', ...]
widgets = {'subject':forms.CheckboxSelectMultiple}
views.py
class PollView(CreateView):
form_class = PollForm
template_name = 'poll.html'
学生可以选择他们想要的科目。
【问题讨论】:
标签: python django django-models django-forms django-validation