簡體   English   中英

Django 多張圖片上傳到S3 Bucket

[英]Django multiple image upload to S3 Bucket

我在 Django 中創建了一個簡單的電子商務網站,允許用戶上傳產品的多個圖像。 這些多張圖像需要保存在存儲桶 S3 中。

這里models.py:

class Product(models.Model):
    user = models.ForeignKey(User, on_delete=models.CASCADE)
    title = models.CharField(max_length=200)
    description = models.CharField(max_length=200, null=True)
    posted_date = models.DateTimeField(default=datetime.now, blank=True)
    size_chart= models.FileField(upload_to='images/', null=True, verbose_name="")

class Product_Pictures(models.Model):
    product = models.ForeignKey(Product, on_delete=models.CASCADE)
    file = models.FileField(upload_to='images/', null=True, verbose_name="", default="null") 

這里views.py:

def add_product(request):
   try:
       files = request.FILES.getlist('pro-image')
       size_chart = request.FILES.get('size_chart', False)

       product = Product.objects.create(user = user, title = request.POST.get('title'), description = request.POST.get('description'), size_chart= size_chart)  
   except Product.DoesNotExist:
       raise Http500()

   product = Product.objects.latest('id')  
   for photo in files: 
       add_product_pictures(dress, photo)    
   return redirect('/ads')

def add_product_pictures(dress, photo):   
    photo = 'images/'+str(photo)
    Dress_Pictures.objects.create(dress =  dress, file = photo)   

因此,當我嘗試添加具有多張圖片的新產品時,只有一張圖片會上傳到 S3 存儲桶,其他圖片都不會上傳。 雖然條目保存在數據庫中並且系統不會引發錯誤。 我嘗試了很多方法來管理它,但沒有任何效果。 我不明白為什么所有文件都沒有上傳到存儲桶。 請給我一些出路。

這行代碼應該是add_product(dress, files)還是add_product(dress, photos)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM