Python 如何将django存储用于dropbox上的媒体存储?
我正在使用django存储为Python 如何将django存储用于dropbox上的媒体存储?,python,django,dropbox,python-django-storages,Python,Django,Dropbox,Python Django Storages,我正在使用django存储为Dropbox上的媒体文件提供服务。但我无法让它工作(媒体文件仍然存储在本地服务器中) 我安装了dropbox和django存储,创建了一个权限类型为app folder的应用程序,然后添加了相关设置 以下是我的设置: BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) PROJECT_DIR = os.path.dirname(os.path.abspath(__file__)
Dropbox
上的媒体文件提供服务。但我无法让它工作(媒体文件仍然存储在本地服务器中)
我安装了dropbox和django存储,创建了一个权限类型为app folder的应用程序,然后添加了相关设置
以下是我的设置:
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
PROJECT_DIR = os.path.dirname(os.path.abspath(__file__))
STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(PROJECT_DIR, 'static')
MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
MEDIA_URL = '/media/'
DEBUG = False
INSTALLED_APPS = (
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'django_filters',
'website',
'storages',
)
# for dropbox
DEFAULT_FILE_STORAGE = 'storages.backends.dropbox.DropBoxStorage'
DROPBOX_OAUTH2_TOKEN = 'my_generated_token_from_dropbox'
DROPBOX_ROOT_PATH = 'media'
MIDDLEWARE_CLASSES = (
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.locale.LocaleMiddleware',
'django.middleware.common.CommonMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.auth.middleware.SessionAuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
'django.middleware.security.SecurityMiddleware',
)
要将媒体文件上载到Dropbox(并读取它们),设置代码中需要更改哪些内容?确定,找到问题!设置是正确的,问题是出于某种原因,我正在为我的
文件字段使用自定义存储!我所要做的就是删除存储=…
:
file = models.FileField(upload_to=some_path, storage=CustomStorage())
到
你能澄清一下吗,但我无法让它工作
?无法将媒体文件存储在dropbox上,它们仍然存储在本地服务器上
file = models.FileField(upload_to=some_path)