2017-08-30 74 views
0

我正在使用django-storages上傳到s3存儲桶。 但我希望能夠上傳到不同的s3存儲區,而不是我在settings.py中設置的默認值.py 我的應用程序爲每個存儲區有不同的網頁,並且可以訪問這些內容。 理想情況下,我想從網址中提取存儲區名稱,並動態設置存儲區名稱,以便將文件上傳到我的代碼中。使用Django存儲將文件動態上傳到不同的s3存儲桶boto3

def post(self, request, *args, **kwargs): 
    if request.method == "POST": 
     bucket = kwargs.get('bucket_name') 
     form_model = Document() 
     form_model.upload.storage = S3Boto3Storage(bucket=bucket) 
     form = DocumentForm(request.POST, request.FILES) 
     if form.is_valid(): 
      form.save() 
    return HttpResponseRedirect("/bucket/"+bucket) 

這不僅節省了到defaul位置

回答

0
def post(self, request, *args, **kwargs): 
    if request.method == "POST": 
     bucket = kwargs.get('bucket_name') 
     form = DocumentForm(request.POST, request.FILES) 
     if form.is_valid(): 
      form.instance.upload.storage = S3Boto3Storage(bucket=bucket) 
      form.save() 
    return HttpResponseRedirect("/bucket/"+bucket) 

找到我自己的答案

相關問題