django - 如何将视图数组发布到视图中

时间:2013-03-25 15:46:43

标签: python html django http post

我从昨天起就陷入了这个问题。我有一个表单,用户可以选择更多的图像文件并提交。现在我无法在views.py中捕获那些POSTED图像文件。

我的HTML:

<input type="file" name="images[]" /> <input type="file" name="images[]" />

在我的views.py中我这样做了:

images = request.POST.getlist('images[]')

但是一旦我print images,我得到[],空数组。我究竟做错了什么?我想获取所有选定的图像文件,并在我的视图中将它们保存到数据库中。

修改
这是我的HTML:

<form action="/save/" method="post" enctype="multipart/form-data"> 
 <input type="file" name="images[]" /> 
 <input type="file" name="images[]" />
<input type="submit" value="send" />
</form>

这是我的views.py

fotos = request.POST.getlist('images[]')
for i in range(len(fotos)):
  print fotos[i]

这里是打印[],而不是每张图片的名称。为什么这个数组是空的?

感谢您的帮助。

1 个答案:

答案 0 :(得分:2)

当Django处理文件上传时,它与常规POST字段略有不同。数据位于request.FILES,需要在那里访问。 The documentation about handling file uploads is a great starting point.