许多文件以ImageField形式上传 - django

gal*_*kak 4 django upload django-models

我的问题很简单.我有这样的模板:

<form enctype="multipart/form-data"
action="{% url offers.views.add_offer %}" method="post">    
    <input type="file" name="image1" />
    <input type="file" name="image2" />     
    <input type="submit" value="Add" />
</form>
Run Code Online (Sandbox Code Playgroud)

模型看起来像这样:

class Image(models.Model):
    image = models.ImageField(upload_to='uploads/images/offers/')
Run Code Online (Sandbox Code Playgroud)

和那样的形式(它使用模型图像):

class ImageForm(ModelForm):
    class Meta:
        model = Image
Run Code Online (Sandbox Code Playgroud)

并且看起来像那样:

    for f in request.FILES:
    # imageform:
        image = ImageForm(request.POST, f)
        image.save()
Run Code Online (Sandbox Code Playgroud)

问题是我无法上传图片.我想在图像模型的两个单独的实例中保存图像.
我有一个错误:

'unicode'对象没有属性'get'

感谢您的帮助和回应.

更新以提供更多信息

nab*_*und 8

男人,Django Formsets是你需要的:

http://docs.djangoproject.com/en/dev/topics/forms/formsets/

编辑:

风景:

def manage_images(request):
    ImageFormSet = formset_factory(ImageForm)
    if request.method == 'POST':
        formset = ImageFormSet(request.POST, request.FILES)
        if formset.is_valid():
            # do something with the formset.cleaned_data
    else:
        formset = ImageFormSet()
    return render_to_response('manage_images.html', {'formset': formset})
Run Code Online (Sandbox Code Playgroud)

模板:

<form enctype="multipart/form-data" action="{% url offers.views.add_offer %}" method="post">
    {{ formset.management_form }}
    <table>
        {% for form in formset.forms %}
        {{ form }}
        {% endfor %}
    </table>
</form>
Run Code Online (Sandbox Code Playgroud)