Stworzyłem backend zwyczaj przechowywania, plik nazywa storages.py
i jest umieszczony w aplikacji o nazwie core
:Django - Błąd importowania 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)
W settings.py
mam follwing:
STATICFILES_STORAGE = 'core.storages.S3StaticBucket'
DEFAULT_FILE_STORAGE = 'storages.backends.s3boto.S3BotoStorage'
Kiedy próbuję zrobić python manage.py collectstatic
pokazuje następujący błąd:
django.core.exceptions.ImproperlyConfigured: Error importing storage module core.storages: "No module named backends.s3boto"
A kiedy biegnę python manage.py shell
i spróbować zaimportować ten sam:
>>>
>>> from django.conf import settings
>>> from storages.backends.s3boto import S3BotoStorage
>>>
Każdy pomysł co robię źle?
Czy jesteś w stanie zaimportować 'rdzeń .storages.S3StaticBucket' również w powłoce? Może przegapiłeś tam plik '__init __. Py'. –
Po prostu próbowałem to zrobić, otrzymałem 'ImportError: No module named backends.s3boto'. Mam puste '__init __. Py' w aplikacji' core'. – abstractpaper
Hm. Spróbuj skomentować 'from storages.backends.s3boto importuj linię S3BotoStorage' w pliku storages.py i napisz zamiast niej' importuj magazyny', a następnie w następującej linii 'print storages .__ file__'. Następnie zaimportuj 'core.storages.S3StaticBucket' w powłoce. Następnie ręcznie zaimportuj 'magazyny' w powłoce i wydrukuj' magazyny .__ plik__'. Jeśli ścieżki się różnią - masz odpowiedź. –