2

我对 S3 的理解是

您不希望您的客户端访问您的服务器,然后通过 urls.py 访问 s3。您的客户最好直接从 s3 获取文件(图像)。
因此,您需要将整个 url(image_field.url)而不是相对路径(image_field.name 或类似)返回给您的客户端使用。
但是,如果您从 S3 转移到其他服务怎么办?

假设您以后可能想从 amazon S3 切换到其他东西,将整个 URL 返回给客户端将是一种好的做法?

4

1 回答 1

6

MEDIA_URLBASE_URL您所有上传的资产的。默认情况下,Django 在数据库中存储上传文件的相对路径。

如果使用 S3MEDIA_URL应设置为您的存储桶 URL,例如http://yourbucket.s3.amazonaws.com/

如果您移至其他服务,则可以更改MEDIA_URL设置。应该就是这么简单。

于 2013-01-22T17:13:07.900 回答