【发布时间】:2015-02-04 06:07:05
【问题描述】:
我从 wtforms 得到这个:
ImmutableMultiDict([('csrf_token', u'1422930083.22##139a472d31a0bbb37c25fee616b8b5bd5a38e37a'), ('27', u'y'), ('type', u'job')])
我可以的
print request.form.getlist('type')
获取类型值。但是27 怎么样?名称可以更改,因此其他形式可能是25。
如何访问该输入字段? ImmutableMultiDict 可以转换吗?我无法在ImmutableMultiDict 中弹出任何元素
TypeError: 'ImmutableMultiDict' objects are immutable
【问题讨论】:
-
如果您有
a = ImmutableMultiDict([(...)],为什么不直接以a['27']访问27? -
@Marcin 我不知道输入名称是什么。可以是 27 或其他数字。
-
那么你怎么知道它有'type'名字呢?如果您不知道字典中的其他键,则必须对其进行迭代并获取所有内容。
-
@Marcin 表单有 3 个项目。两个输入(类型和 csrf)始终具有相同的键。具有变量名的唯一键是另一个(27 或其他)。
标签: python wtforms flask-wtforms