为Django添加易于使用的Python 3和2.7支持,用于管理静态资产。
项目描述
为Django添加易于使用的Python 3和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中心等),请访问
功能
适用于使用 Python 3.3 和 Django 1.6 上传媒体资源。
理论上支持 libcloud 所有的后端。
常见问题解答
因为你必须提问。
为什么不使用 dj-static 或 whitenoise?
这些是很好的库,但当你处理用户上传的媒体时,它们并不是你想要的。
为什么不直接更新 django-storages?
libcloud 是很棒的,并且有一个专门致力于它的团队。我们可以让它做大部分繁重的工作。另一方面,将 django-storages 转换为与 Python 3 兼容看起来工作量太大。有时候你不得不从头开始,对吧?
dj-libcloud 支持哪些存储提供商?
dj-libcloud 是 libcloud 的包装器,这意味着它支持该库的所有提供商。查看支持提供商的完整列表!
我如何贡献?
请阅读http://dj-libcloud.readthedocs.org/en/latest/contributing.html
关于类似 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!)
极大地改进了烹饪书(感谢 Jannis!)
从 README 中添加链接到烹饪书
修复了 Google Storage、Rackspace Cloudfiles 和 Microsoft Azure 的 url 方法。同时返回非美国 Amazon S3 存储桶的正确值。
0.1.2 (2014-04-24)
确认与 Python 2.7 兼容
从存储中删除了 django-pipeline 特定的代码
将包含 django-pipeline 的烹饪书添加到文档中
0.1.1 (2014-04-21)
通过仅使用 LibCloudStorage 类解决了第二次运行的问题
使 django-pipeline 可选
删除了不必要的文件
将 TODO 移动到问题跟踪器
0.1.0 (2014-04-21)
在 PyPI 上首次发布。
对 Django 和 Python 3 缺乏简单媒体资源支持的挫败感。
项目详情
dj-libcloud-0.2.0.tar.gz 的散列
算法 | 散列摘要 | |
---|---|---|
SHA256 | b7b4ac3567c9ce696cea3cfee49c537928a9fcab2e6b3420587146376870809a |
|
MD5 | fc088bb10214c1295677d63a9a94f700 |
|
BLAKE2b-256 | 4d520ac95e28d5860a0d38c485cf55faf856d7492dc75b92bd33123b5094194d |