为Django添加了EasyPython3和2.7对静态资产管理的支持。
dj-libcloud的Python项目详细描述
为Django添加了EasyPython3和2.7对静态资产管理的支持。这是优秀的Apache Libcloud库的包装。
文档
快速启动
libcloud在允许您执行任何操作之前验证服务器ssl证书。它会在您的系统中搜索ca证书,如果找不到它,它就会爆炸。见https://libcloud.readthedocs.org/en/latest/other/ssl-certificate-validation.html
在Mac OS X上安装CA证书捆绑包:
# Assuming you are using homebrew for Mac OS X dependency management. $ brew install curl-ca-bundle
安装DJ libcloud:
$ pip install dj-libcloud
然后在项目中使用它,例如用于静态文件:
# settings.py STATIC_URL = 'https://s3.amazonaws.com/my-assets/' STATICFILES_STORAGE = 'djlibcloud.storage.LibCloudStorage' LIBCLOUD_PROVIDERS = { 'default': { 'type': 'libcloud.storage.types.Provider.S3', 'user': os.environ.get('AWS_ACCESS_KEY'), 'key': os.environ.get('AWS_SECRET_KEY'), 'bucket': 'my-assets', 'secure': True, }, }
其他libcloud提供商
如果您想使用其他libcloud提供商(rackspace、openstack、其他aws中心等),请访问:
功能
- 用于使用Python3.3和Django1.6上载媒体资产。
- 理论上支持libcloud支持的所有后端。
常见问题解答
因为你不得不问。
为什么不使用DJ静态或白噪声?
这些是很棒的库,但在处理用户上传的媒体时并不是你想要的。
为什么不更新django存储?
libcloud是一个非常棒的团队。我们可以让它做大部分的重担。另一方面,将django存储转换为使用python 3看起来工作量太大了。有时候你只需要重新开始,对吧?
DJ LibCloud支持哪些存储提供商?
dj libcloud是libcloud的包装器,这意味着它支持该库的所有提供者。看看full list of supported providers!
像django pipeline这样的压缩机呢?
正在努力。当前,pipelinecachedcloudstorage类在第二次运行时中断。见https://github.com/pydanny/dj-libcloud/issues/7
学分
非常感谢jannis leidel(@jezdez)给了我启动这个程序的代码。他是django的核心开发人员,django静态资产管理的大师,总的来说是一个伟大的人。
历史记录
0.2.0(2014-06-23)
- 更新的url方法返回rackspace cloudfiles、microsoft azure、google storage、非美国amazon sv的正确值(谢谢jannis!)
- 大大改进了食谱(谢谢詹尼斯!)
- 添加从自述文件到食谱的链接
- 修复google存储、rackspace云文件和 微软azure。同时返回非美国亚马逊s3的正确值 水桶。
0.1.2(2014-04-24)
- 已确认使用Python2.7
- 从存储中删除Django管道特定代码
- 向包含django pipeline的文档添加食谱
0.1.1(2014-04-21)
- 仅使用libcloudstorage类修复了第二次运行问题
- 使django管道成为可选管道
- 删除了不必要的文件
- 已将Todo移至“问题跟踪者”
0.1.0(2014-04-21)
- pypi上的第一个版本。
- 对django和python 3缺乏简单的媒体资产支持感到沮丧。