【问题标题】:ImportError: No module named custom storages - django-storages botoImportError:没有名为自定义存储的模块 - django-storages boto
【发布时间】:2017-06-20 06:56:00
【问题描述】:

我正在尝试按照本教程使用 s3,但几乎直到最后一步,不知何故我得到了这个错误,我不确定我应该在哪里导入我自己的自定义模块

教程链接
https://www.caktusgroup.com/blog/2014/11/10/Using-Amazon-S3-to-store-your-Django-sites-static-and-media-files/

一切都很好,我可以使用 s3 上传/复制/使用静态文件,然后是为媒体使用创建自定义存储的步骤

# custom_storages.py
from django.conf import settings
from storages.backends.s3boto import S3BotoStorage

class StaticStorage(S3BotoStorage):
    location = settings.STATICFILES_LOCATION

我在与 setting.py 相同的目录中创建了 .py 文件(setting.py 其中包含 INSTALLED_APPS 等)

然后在我在教程中提到的下面添加的设置中

STATICFILES_LOCATION = 'static'
STATICFILES_STORAGE = 'custom_storages.StaticStorage'
STATIC_URL = "https://%s/%s/" % (AWS_S3_CUSTOM_DOMAIN, STATICFILES_LOCATION)

然后我跑了python manage.py collectstatic

我收到此错误

  File "/usr/lib/python2.7/importlib/__init__.py", line 37, in import_module
__import__(name)
ImportError: No module named custom_storages

有人可以帮帮我吗? 提前致谢。

【问题讨论】:

  • 我想这个链接可能对你有帮助:disqus.com/home/discussion/wwwcaktusblog/…
  • @ShubhamNamdeo thx 这确实很有帮助~!~ 也找到了我的答案
  • 好的。此外,您也可以针对自己的问题发布答案。

标签: python django amazon-web-services amazon-s3


【解决方案1】:

此功劳应归功于 Shubham Namdeo,他给了我https://disqus.com/home/discussion/wwwcaktusblog/using_amazon_s3_to_store_your_django_sites_static_and_media_files/ 的链接

好吧,人们发现了很多建议和方法/错误,但对我来说,帮助我解决这个问题的部分只是将custom_storage.py 移动到与manage.py 相同的目录中,所以manage.pycustom_storage.py其实是在同级目录结构中就这样吧~

甚至不需要导入任何东西。

我已经附上了我得到答案的部分的图片,这样如果你遇到和我一样的问题,你就不必一直向下滚动。

【讨论】:

    【解决方案2】:

    在我的项目中,我将 custom_storages 放在一个文件夹中,这样可以移动它可能会有所帮助?

    STATICFILES_STORAGE = 'myapp.custom_storages.StaticStorage'
    

    文件夹结构如下所示

    /myproject
       someapp1/
       someapp2/
       myapp/
          settings/
             __init__.py
             production.py
          custom_storages.py
       manage.py
    

    【讨论】:

    • 我正在使用@Shubham Namdeo 提供并提供帮助的链接,我相信你的也应该有帮助,因为我不应该将custom_storage.py 放在它所在的位置,如果是这样,我相信我应该使用你指导了你的STATICFILES_STORAGE 让我也试试看:D
    • 我刚刚尝试了你的方法,它确实解决了module 错误,但引发了另一个错误,而不是关于包的问题,​​但是通过将custom_storage.py 移动到其他地方提供的链接@Shubham 实际上解决了它没有出现任何其他错误
    猜你喜欢
    • 2014-06-06
    • 2012-10-21
    • 1970-01-01
    • 2021-01-28
    • 2020-09-07
    • 2018-02-05
    • 2015-07-20
    • 2018-07-28
    • 2023-03-27
    相关资源
    最近更新 更多