【问题标题】:Django: ImportError: No module named 'corsheaders'Django:ImportError:没有名为“corsheaders”的模块
【发布时间】:2018-04-23 02:11:54
【问题描述】:

在我的第一个 Django 项目中,我遇到了一个奇怪的问题:ImportError: No module named 'corsheaders'。 我已经使用

在我的虚拟环境中安装了 django-cors-headers
    sudo pip3 install django-cors-headers

但成功了。

pip3 freeze 显示包 django-cors-headers 已安装,但每当我运行 uwsgi 时,它都会在日志中显示异常回溯:

 Traceback (most recent call last):
    File "./login/wsgi.py", line 16, in <module>
    application = get_wsgi_application()
    File "/home/pawel/pythonApp/myappenv/lib/python3.5/site-
    packages/django/core/wsgi.py", line 13, in get_wsgi_application
    django.setup(set_prefix=False)
    File "/home/pawel/pythonApp/myappenv/lib/python3.5/site-
    packages/django/__init__.py", line 27, in setup
    apps.populate(settings.INSTALLED_APPS)
    File "/home/pawel/pythonApp/myappenv/lib/python3.5/site-
    packages/django/apps/registry.py", line 85, in populate
    app_config = AppConfig.create(entry)
    File "/home/pawel/pythonApp/myappenv/lib/python3.5/site-
    packages/django/apps/config.py", line 94, in create
    module = import_module(entry)
    File 
 "/home/pawel/pythonApp/myappenv/lib/python3.5/importlib/__init__.py", 
    line 126, in import_module
 return _bootstrap._gcd_import(name[level:], package, level)
 ImportError: No module named 'corsheaders'
 unable to load app 0 (mountpoint='') (callable not found or import 
 error)

我尝试安装不同的 corsheaders 版本,但也没有成功。我正在运行 Django 1.11.7 和 Python 3.5.2。任何帮助将不胜感激。

编辑 #1 我确实遵循了 corsheader github 存储库中的官方安装说明。我在 settings.py 和 coresheader 中间件中安装的应用程序中有 corsheaders。

【问题讨论】:

  • 你确定你正在使用安装包的 Python 解释器运行 uwsgi 吗?
  • 原来如此,谢谢!

标签: django python-3.x cors pip


【解决方案1】:

建议的方法是先激活您的虚拟环境,然后使用 pip 安装任何软件包。

【讨论】:

    【解决方案2】:

    对于任何遇到同样问题的人 - 直接从我的虚拟环境中运行 pip3:

    /home/pawel/pythonApp/myappenv/bin/python3.5 pip3 install django-cors-headers
    

    解决了这个问题。问题是在运行 pip3 install 时,模块安装在一般系统范围的 pip3 目录中,而不是我的 virtualenv 目录中。要启动 django,我使用的是 virtualenv 的解释器,而不是一般的解释器。

    【讨论】:

      【解决方案3】:

      很可能您没有在 INSTALLED_APPS 中添加“corsheaders”:

      INSTALLED_APPS = (
          ...
          'corsheaders',
          ...
      )
      

      【讨论】:

      • 不幸的是,事实并非如此。我已按照 gtihub 存储库中的安装说明进行操作。
      猜你喜欢
      • 2017-09-02
      • 2023-04-06
      • 2017-11-30
      • 2012-12-08
      • 1970-01-01
      • 2017-07-22
      • 2015-04-03
      • 2013-07-24
      • 1970-01-01
      相关资源
      最近更新 更多