Django公司:请求.POST如果choicefield值不是s,则键为空

2024-10-01 22:30:55 发布

您现在位置:Python中文网/ 问答频道 /正文

我目前正在使用django开始web开发。在我的申请表中,我想要一个包含各种问题及其选择的表格。在

模型.py,创建一个表来存储问题

class QuizItems(models.Model):
    question = models.CharField(max_length=255)
    choices = SeparatedValuesField(token="$")
    answer = models.IntegerField()

表单.py时,我在Form类中重载了\uyu init_uu方法,以便传递qchoose,一个QuizItems实例列表来创建表单字段。在

^{pr2}$

然后在视图.py

if request.method == 'POST':
    idlst = request.POST.keys()
else:
    # qchoose is a list of quizitems
    form = QuizForm(qchoose)

测验.html

{% for field in form %}
<li><b> {{ field.label }} </b></li>                                                                                                                      
<ul> {{ field }} </ul>
{% endfor %}

我想得到idlist,一个问题id的列表,我可以从中得到正确的答案。当所有的选项字段都填满时,它工作得很好。问题是如果有任何choicefield值是空的,我就不能得到它的键。我想自从请求.POST是一个字典,它应该返回所有键,即使它的值为空。

有人能帮我一下我的代码出了什么问题或者有什么遗漏吗?谢谢您!在


Tags: djangopyformwebfield列表modelsrequest

热门问题