首页 > 解决方案 > Django 2.0 多次上传图片

问题描述

我应该同时上传更多图片,但我找不到解决方案,你可以帮助我理解我错在哪里。谢谢

楷模:

class GalleriaFotografica(models.Model):
  user_galleria = models.ForeignKey(User, on_delete=models.CASCADE, 
  related_name="utente_galleria")
  data_inserimento = models.DateTimeField(auto_now_add=True)
  titolo= models.CharField(max_length=250, blank=True, null=True )
  foto=models.ImageField(blank=True, null=True, upload_to = 'gallery/')


  class Meta:
        permissions = (
         ("Azienda", "Azienda"),   

         )
        verbose_name="GalleriaFotografica"
        verbose_name_plural="GalleriaFotografica"


  def __str__(self):
    return self.titolo

形式:

class Form_multimmagine(forms.Form):
 foto = forms.ImageField()

意见:

 def foto(request):
    userid=request.user.pk

    if request.method=="POST" and 'caricafoto' in request.POST:
     form=Form_multimmagine(request.POST,  request.FILES)
     if form.is_valid():
        for each in form.cleaned_data['foto']:
            GalleriaFotografica.objects.create(foto=each)
        return HttpResponseRedirect("foto")

标签: djangoimageupload

解决方案


多使用一个类来存储同一个画廊的多张照片

class GalleriaFotografica(models.Model):
  ...
  foto=models.ForeignKey(Foto)

class Foto(models.Model):
  foto=models.ImageField(blank=True, null=True, upload_to = 'gallery/')

比制作​​ 1 个表格来获取所有图像,将所有图像保存在 Foto 并将其与您想要的 GalleriaFotografica 链接


推荐阅读