保存文件后获取 url(不使用 django 模型)

Getting url after a saving file (not using django model)

我正在尝试检索我保存后立即保存的文件的 url。

请注意,我没有使用 Django model 来保存文件。我正在使用 default_storage.save() 手动保存文件。显然,使用模型很容易检索 url.

目前我有 path = default_storage.save(somefile, ContentFile(upload.file.read())) )。我正在使用 AWS 亚马逊网络服务 S3。正在保存文件,但是我无法让 url 访问该文件,我只是用 path 取回文件名。我怎样才能得到 url?

如果是在本地,我可以做类似的事情:

path = default_storage.save(somefile, ContentFile(upload.file.read()))
full_path = os.path.join(settings.MEDIA_ROOT, path)

获得url/path。有什么我可以做的吗?

试试这个

settings.py

MEDIA_ROOT = URL_BUCKET_S3  #it can be another variable different from MEDIA_ROOT

views.py

path = default_storage.save(somefile, ContentFile(upload.file.read()))
full_path = settings.MEDIA_ROOT + path

我在项目中的工作方式非常相似