我正在发布一系列图像文件和每个图像的相应描述。所以骨架 html 表单部分:
<div class="form-group">
<input type="file" name="image">
<input type="file" name="description">
</div>
<div class="form-group">
<input type="file" name="image">
<input type="file" name="description">
</div>
<div class="form-group">
<input type="file" name="image">
<input type="file" name="description">
</div>
我的服务器是 Django 1.6.11,我想使用 Django 的 getlist 获取 image 参数和 description 参数。所以我想确保我得到的两个列表 --image_list 和 description_list 确实匹配,这意味着 image_list[0] 确实匹配description_list[0]、image_list[1] 确实与 description_list[1] 和 image_list[2] 匹配与 description_list[2] 匹配。
根据我在Chrome和Django 1.6.11测试时看到的情况,似乎可以保证对应关系。但是,我不确定这是否一直适用。
请您参考如下方法:
我认为您不应该依赖 getlist 的序列.相反,您应该为每个 <input> 赋予不同的名称:
<div class="form-group">
<input type="file" name="image0">
<input type="file" name="description0">
</div>
<div class="form-group">
<input type="file" name="image1">
<input type="file" name="description1">
</div>
<div class="form-group">
<input type="file" name="image2">
<input type="file" name="description2">
</div>
然后在您的 View 中您可以:
for i in range(0, 3):
file = request.POST['image%s' % i]
description = request.POST['description%s' % i]
# other operations
