我正在制作一份RSVP表格,被邀请者可以选择带一位客人(或2或3位)。表单的输入生成了x次,其中x是用户设置的来宾数。因此,例如,如果用户从下拉列表中选择“0”,则他们不会带来来宾,因此表单只包含1个人(他们自己)的输入。如果他们从下拉列表中选择“1”,表单将复制所有字段,但仍然只有一个路由/一个提交按钮。复制的表单字段与原始字段相同,因此表单有两个名为“name”的输入,两个名为“dinner”的输入,等等
我印刷时得到一本字典请求.POST地址:
<QueryDict: {u'restrictions': [u'None', u'Gluten'], u'name': [u'Krista', u'Joel'], u'dinner': [u'chicken', u'fish'], u'csrfmiddlewaretoken': [u'iEjxo6KgLGHZWwvaxEd6I7CUd7GTs89VGpiKwmiCP9xqXKFK096s0vboK4pPQxea']}>
在vanilla python中,我可以访问如下值:
dictionary['restrictions'][1]
返回“面筋”。但在Django中,这个表达式返回'e'—关键字名'restrictions'的索引1处的字母。同样地
for key, val1, val2
print key, val1, val2
返回“too many values to unpack”,可能是因为解包的是键名中的字母,而不是值。你知道吗
如何访问这些值?或者,有没有更好的方法根据用户的选择生成多个表单,只需一个路由和一个提交按钮?你知道吗
你应该试试
request.POST.getlist('restrictions')
相关问题 更多 >
编程相关推荐