数据库中文件的django文件存储后端。
django-dbstorage的Python项目详细描述
数据库中文件的django文件存储后端。
安装
安装django-dbstorage的最简单方法是使用pip:
pip install django-dbstorage
快速启动
在djangosettings文件中:
- 将'django-dbstorage'添加到INSTALLED_APPS
- 将DEFAULT_FILE_STORAGE设置为 'django_dbstorage.storage.DatabaseStorage'
- 将MEDIA_ROOT和MEDIA_URL设置为None。
提供文件
在urls.py中,将以下内容添加到urlpatterns:
url(r'^media/', include('django_dbstorage.urls'))
或者,如果要指定更多选项,请使用:
url(r'^media/', include(django_dbstorage.urls.serve()))
您应该将settings.MEDIA_URL设置为此include的根目录,在 这个案例:/media/。
如果不希望提供数据库中的文件,请不要添加 任何设置为urls.py并将settings.MEDIA_URL设置为None的内容。
自定义
DatabaseStorage有几个选项。自定义,子类 它并将其用作DEFAULT_FILE_STORAGE。例如:
class MyDatabaseStorage(DatabaseStorage): def __init__(self): super(MyDatabaseStorage, self).__init__(location='/tmp', base_url='/files/', uniquify_names=True)
为了方便起见,有一个NonUniquifyingDatabaseStorage类 保存时不尝试查找唯一文件名的。这个 类抛出状态代码为EEXISTS的IOError,当 正在尝试_save()。
此功能由其他包使用,例如 django-randomfilenamestorage。