インポートエラーstorages.backendsは、ファイルはstorages.py
と呼ばれ、アプリ内に置かれcore
呼ば:settings.py
でジャンゴ - 私はカスタムのストレージバックエンドを作成しました
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)
を、私は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:No modules named backends.s3boto'を持っています。私はアプリの 'core'に空の' __init __。py'を持っています。 – abstractpaper
Hm。 storages.pyの 'storages.backends.s3boto import S3BotoStorage'行からコメントして、代わりに' import storages'と 'print storages .__ file__'の行に書きます。次に、 'core.storages.S3StaticBucket'をシェルにインポートします。次に、シェル内で 'storages'を手動でインポートし、' storages .__ file__'を出力します。パスが異なる場合は、あなたの答えがあります。 –