Django只从列表中获取一个字符串,而不是一个

2024-04-19 03:44:23 发布

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

我有两张单子请求.POST我试图在我的代码中使用。它们看起来如下,我甚至通过查看Django的垃圾场来确认它们的结构:

POST:<QueryDict: {u'rasters': [u'240p', u'720p'], u'title': [u'algies_2'], u'destination': [u'algies_2'], u'framerate': [u'60'], u'formats': [u'MP4', u'WEBM']

我的一个观点是:

...
'-p 2', '-f', ",".join([format.lower() for format in request.POST['formats']]), '-t', ",".join(request.POST['rasters'])
...

但是,它所做的不是将“rasters”和“formats”列表作为逗号分隔的列表(即“240p、720p”和“mp4、webm”)连接,而是返回每个列表中最后一个条目的字符的逗号分隔列表(即“7、2、0、p”和“w、e、b、m”)。我觉得我做的一切都是对的,我是不是错过了一些微妙的错误?你知道吗


Tags: django代码format列表requestpost结构单子
1条回答
网友
1楼 · 发布于 2024-04-19 03:44:23

POST是一个^{}对象,当在httppost中为同一个键提交多个值时,它有特殊的行为。要获得所有这些,请使用^{}方法。所以格式化代码如下所示:

",".join([format.lower() for format in request.POST.getlist('formats')])

相关问题 更多 >