2013-08-31 28 views
3

我想讓Boto將我的網址設置爲://s3.amazonaws.com/BUCKETNAME/FILEPATH/,但它總是返回//BUCKETNAME/s3.amazonaws.com/FILEPATH。我發現了一些關於CallingFormat(http://boto.s3.amazonaws.com/ref/s3.html)的內容,但我不確定該如何處理它。django上boto存儲的URL格式,帶有SSL

我那麼有:

STATICFILES_STORAGE = 'storages.backends.s3boto.S3BotoStorage'

http://django-storages.readthedocs.org/en/latest/backends/amazon-S3.html說,你可以設置一個設置AWS_CALLING_FORMAT指定我想要什麼,但我似乎並沒有得到它。

的網址會在模板生成與通常的:

{% load staticfiles %} 
{% static 'FILEPATH' %} 
+0

什麼代碼當前正在生成格式不正確的url? – AdamKG

+0

@AdamKG更新了更多信息。 – speg

回答

8

沒有測試,但是based on the source,我想你想要的是:

AWS_S3_CALLING_FORMAT = boto.s3.connection.OrdinaryCallingFormat() 

(OC你需要有import boto.s3.connection以上某處)

請注意設置名稱 - 它與django-storages文檔中的內容不匹配。

django-storages docs似乎更傾向於平原s3後端,這是一個恥辱,博託一個更好。

如果它不工作,還要確保你在1.1.8 - 不知道哪個版本開始支持這一點,但s3boto後端在今年年初經歷了some big changes,這不會對2012年發佈的Django的工作-storages。

+1

你是一位紳士和學者。你不知道你剛剛救了我多少時間。乾杯! – speg