3

我试图让 Boto 将我的网址格式化为://s3.amazonaws.com/BUCKETNAME/FILEPATH/但它总是返回//BUCKETNAME/s3.amazonaws.com/FILEPATH。我发现了一些关于 CallingFormat ( http://boto.s3.amazonaws.com/ref/s3.html ) 的信息,但不知道如何处理它。

然后我有:

STATICFILES_STORAGE = 'storages.backends.s3boto.S3BotoStorage'

http://django-storages.readthedocs.org/en/latest/backends/amazon-S3.html说你可以设置一个设置AWS_CALLING_FORMAT来指定我想要的,但我似乎没有得到它。

URL 是在模板中生成的,通常:

{% load staticfiles %}
{% static 'FILEPATH' %}
4

1 回答 1

9

未经测试,但基于 source,我认为您想要的是:

AWS_S3_CALLING_FORMAT = boto.s3.connection.OrdinaryCallingFormat()

(OC你需要在import boto.s3.connection上面的某个地方)

请注意设置名称 - 它与 django-storages 文档中的内容不匹配。

django-storages 文档似乎更面向普通的 s3 后端,这是一种耻辱,boto 更好。

如果它不起作用,还请确保您已启用1.1.8- 不确定哪个版本开始支持此功能,但 s3boto 后端在年初进行了一些重大更改,这不适用于 django-storages 的 2012 版本。

于 2013-08-31T17:41:07.417 回答