Django应用程序的Dropbox存储
django-dropbox-storage的Python项目详细描述
Django Dropbox存储
A Dropbox Storage for your Django apps
什么
django-dropbox-storage
允许django应用程序使用dropbox作为文件上载的存储后端。
安装
首先要做的事:
$ pip install django-dropbox-storage
然后打开项目的settings.py
,并将其包含到您的INSTALLED_APPS
:
INSTALLED_APPS = (
...
'django_dropbox_storage',
...
)
如果要使用django_dropbox_storage
作为所有文件上载的默认存储,还需要调整DEFAULT_FILE_STORAGE
:
DEFAULT_FILE_STORAGE = 'django_dropbox_storage.storage.DropboxStorage'
如果只想在单个模型字段上使用它,只需导入即可:
from django_dropbox_storage.storage import DropboxStorage
DROPBOX_STORAGE = DropboxStorage()
photo = models.ImageField(upload_to='photos', storage=DROPBOX_STORAGE ...)
为了使其正常工作,您必须设置下一个设置:
DROPBOX_ACCESS_TOKEN = 'xxx'
如果您没有DROPBOX_ACCESS_TOKEN
,可以在Dropbox for Developers创建Dropbox应用程序后创建一个。
如果您有DropboxApp key
和App secret
,则可以在settings.py
中设置DROPBOX_CONSUMER_KEY
和DROPBOX_CONSUMER_SECRET
设置,然后运行:
$ python manage.py get_dropbox_token [--settings=test_settings]
按照屏幕上的说明,最后在settings.py
模块中设置DROPBOX_ACCESS_TOKEN_SECRET
。
您还可以设置默认根文件夹设置值DROPBOX_ROOT_FOLDER
:
DROPBOX_ROOT_FOLDER = '/Public'
默认设置为'/'
(根文件夹)。
测试
测试是按照Django的最佳实践编写的。
要运行它们,需要正确设置DROPBOX_ACCESS_TOKEN
。
注意:如果将此包测试为独立的,则可以在根文件夹中的local_settings.py
模块中设置访问令牌。
启动测试套件:
$ python manage.py test [--settings=test_settings]
要检查单元测试覆盖率,您可以:
$ pip install coverage
$ coverage run manage.py test [--settings=test_settings]
$ coverage report -m
贡献
投稿时,请遵循以下步骤:
- 克隆回购协议并进行更改。
- 确保您的代码有针对它编写的测试用例。
- 确保所有的测试都通过。
- 用flake8填充代码。
- 把你的名字加到捐款人名单上。
- 提交请求。
作者
- emanuele bertoldi
此项目基于以前的工作:
- andres torresdjango-dropbox
- josh schneierdjango-storages
- danielle madeleydjango-storages
感谢他们所有人!
许可证
版权所有(c)2018 Emanuele Bertoldi