я создал бэкэнд пользовательских хранений, файл называется storages.py
и помещаются в приложении под названием core
:Джанго - Ошибка при импорте storages.backends
from django.conf import settings
from storages.backends.s3boto import S3BotoStorage
class S3StaticBucket(S3BotoStorage):
def __init__(self, *args, **kwargs):
kwargs['bucket_name'] = getattr(settings, 'static.mysite.com')
super(S3BotoStorage, self).__init__(*args, **kwargs)
В settings.py
я имею follwing:
STATICFILES_STORAGE = 'core.storages.S3StaticBucket'
DEFAULT_FILE_STORAGE = 'storages.backends.s3boto.S3BotoStorage'
Когда я пытаюсь сделать python manage.py collectstatic
он показывает следующее сообщение об ошибке:
django.core.exceptions.ImproperlyConfigured: Error importing storage module core.storages: "No module named backends.s3boto"
И когда я бегу python manage.py shell
и попытаться импортировать тот же:
>>>
>>> from django.conf import settings
>>> from storages.backends.s3boto import S3BotoStorage
>>>
Любая идея, что я делаю не так?
Вы в состоянии импортировать 'ядро .storages.S3StaticBucket' в оболочке? Возможно, вы пропустили файл '__init __. Py'. –
Просто попробовал это, я получил 'ImportError: Нет модуля с именем backends.s3boto'. У меня есть пустая '__init __. Py' в приложении' core'. – abstractpaper
Hm. Попытайтесь прокомментировать 'from storages.backends.s3boto импорт строки S3BotoStorage' в storageages.py и вместо этого напишите' import storageages', а затем в следующей строке 'print storageages .__ file__'. Затем импортируйте «core.storages.S3StaticBucket» в оболочку. Затем вручную импортируйте 'хранилища' в shell и print' storageages .__ file__'. Если пути отличаются - у вас есть свой ответ. –