簡體   English   中英

使用django-storages boto3將文件動態上傳到不同的s3存儲桶中

[英]Upload files dynamically into different s3 buckets with django-storages boto3

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

    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)

這只會保存到默認位置

    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)

找到了我自己的答案

暫無
暫無

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

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