0

我接手了一个使用 django cumulus 进行云存储的项目。在我的开发机器上,有时我使用缓慢的互联网连接,每次我保存更改时,django 都会重新编译并尝试连接到 racksapace 商店

Starting new HTTPS connection (1): identity.api.rackspacecloud.com

这有时需要 15 秒,而且真的很痛苦。我读过一篇帖子,有人说他们为了本地发展而关闭了积云。我认为这是通过设置完成的

DEFAULT_FILE_STORAGE

但不幸的是,海报没有具体说明。如果有人知道一个简单的设置,我可以放入我的本地设置以从我的本地机器提供媒体和静态文件,并停止 django 在每次保存时尝试连接到我的云存储,这就是我想要做的。

4

2 回答 2

0

是的,看起来你应该只需要DEFAULT_FILE_STORAGE作为默认值,这是django.core.files.storage.FileSystemStorage根据源代码

但是,更好的方法是不在本地设置中设置任何内容,而是在or文件中设置DEFAULT_FILE_STORAGEand 。CUMULUSstaging_settings.pyprod_settings.py

于 2016-04-15T23:53:03.733 回答
0

rackspace 存储桶的不断重新加载是因为以前的开发人员有

from cumulus.storage import SwiftclientStorage
class PrivateStorage(SwiftclientStorage):

在models.py中

from common.storage import PrivateStorage
PRIVATE_STORE = PrivateStorage()
...
class Upload(models.Model):
    upload = models.FileField(storage=PRIVATE_STORE, upload_to=get_upload_path)

这意味着每次重新加载项目时,它都会创建一个到 rackspace 的新 https 连接,如果连接不好,则会超时。我创建了一个设置标志来通过导入 SwiftclientStorage 和定义 PrivateStorage 来控制它

from django.conf import settings
if settings.USECUMULUS:
    from cumulus.storage import SwiftclientStorage

    class PrivateStorage(SwiftclientStorage):
...
else:
    class PrivateStorage():
        pass
于 2016-06-12T10:06:49.743 回答