如何在Django中获取POST请求的值列表?
假设我想传递的参数叫做 printdata
,它的值是 printdata=['a', 'b', 'c']
。
我用 "input type="hidden" name="alist" value={{printdata}}>"
来传递这个参数。但是,当我在 views.py 里用下面的代码来获取这个参数时:
params = request.POST
params["alist"]
的值变成了 ['a',
,而不是我想要的 ['a', 'b', 'c']
。我怀疑是 django 在识别参数结束时使用了 ,
。
你有什么建议或者其他方法可以传递这个参数吗?
5 个回答
0
使用
request.POST.getlist('alist')
来获取这些值。
0
确保在你的HTML代码中,把列表字符串用引号括起来。比如:
<input type="hidden" name="alist" value="{{printdata}}">
8
在你的HTML中使用多个隐藏字段,每个字段对应一个值:
<input type="hidden" name="alist" value="1" />
<input type="hidden" name="alist" value="2" />
<input type="hidden" name="alist" value="3" />
在服务器端,使用 request.POST.getlist
来读取所有的值,结果会以列表的形式返回:
alist = request.POST.getlist('alist')
# 'alist' now contains ['1', '2', '3']