2013-07-19 1 views
2

Я использую Amazon AWS S3 и пытаюсь настроить приложение Django для развертывания на Heroku и установки статических и мультимедийных файлов с использованием пакета django-storages (который также использует boto).Не удается получить django-хранилища для установки defaultStorage

Мой settings.py включает в себя следующее:

DEBUG = False 
STATICFILES_FINDERS = (
    'django.contrib.staticfiles.finders.FileSystemFinder', 
    'django.contrib.staticfiles.finders.AppDirectoriesFinder', 
    'django.contrib.staticfiles.finders.DefaultStorageFinder', 
) 

if not DEBUG: 
    DEFAULT_FILE_STORAGE = 'storages.backends.s3boto.S3BotoStorage' 
    AWS_STORAGE_BUCKET_NAME = os.environ['AWS_STORAGE_BUCKET_NAME'] 
    STATICFILES_STORAGE = 'storages.backends.s3boto.S3BotoStorage' 
    S3_URL = 'http://%s.s3.amazonaws.com/' % AWS_STORAGE_BUCKET_NAME 
    STATIC_URL = S3_URL 
    ADMIN_MEDIA_PREFIX = STATIC_URL + 'admin/' 

INSTALLED_APPS += (
    'storages', 
) 

Когда я вхожу в моей консоли, чтобы увидеть, если хранилища по умолчанию установлены, хотя, я не получаю то, что я должен в соответствии с django-storagesgetting started guide.

Вот пример из моей оболочки сессии:

>>> from django.core.files.storage import default_storage 
>>> print default_storage.__class__ 
<class 'django.core.files.storage.DefaultStorage'> 

По словам гида, я должен был получить это обратно:

>>> from django.core.files.storage import default_storage 
>>> print default_storage.__class__ 
<class 'S3Storage.S3Storage'> 

Я пытался импортировать мой settings.py в интерактивной оболочке , Не повезло. Тем не менее, мои другие настройки AWS хранятся в порядке, например S3_URL, который извлекает переменную env и вставляет в URL-адрес amazon.

Может ли кто-нибудь дать мне ключ?

TIA.

ответ

0

Вы установили boto? Если boto установлен неправильно, вероятно, что django-storage вернет вас к классу хранения по умолчанию, если он не сможет правильно импортировать boto.

+0

Да, у меня есть boto 2.9.8, установленный через pip. –

Смежные вопросы