Переопределение метода form_valid для загрузки нескольких файлов

Есть такая модель

class Photo(models.Model):
    photo = models.ImageField(upload_to="photos/%Y/%m/%d/")
    user = models.ForeignKey(User, on_delete=models.CASCADE)

Форма

class UploadFile(forms.ModelForm):
    class Meta:
        model = Photo
        fields = ['photo']
        widgets = {
            'photo': forms.ClearableFileInput(attrs={'multiple': True}),
        }

Для загрузки одной фото делаю так, работает

def form_valid(self, form):
    form.instance.user = self.request.user
    return super().form_valid(form)

Теперь нужно добавить возможность загружать несколько фотографий. Сделал так, но, все равно, загружается только одна фотография

def form_valid(self, form):
    files = self.request.FILES.getlist('photo')
    for f in files:
        form.instance.photo = f
        form.instance.user = self.request.user
        form.instance.save()
    return super().form_valid(form)

Что нужно исправить?

Вернуться на верх