遇到 ModuleNotFoundError: No module named ‘corsheadersw‘ 怎么办?

     阅读:39

实际上遇到这个不用过度解读,我看过很多网上的文章,实际上说的都不对。主要原因是偏离了本意,这几话的意思就是 没有哪个包命名为corsheaders。

所以解决方案就很简单安装 django-cors-headers

但是问题就在这,往往大家用 virtualenv 虚拟环境安装django-cors-headers会出现问题。

问题1:

virtualenv 中如果用

pip install django-cors-headers

直接安装速度很慢,这个主要是因为你的源采用的是国内的,可以更改安装源,这里我就不赘述了。

问题2:

可以到官网去下载 安装包

django-cors-headers · PyPI

下载django-cors-headers-3.11.0.tar.gz 后可以解压到某个文件夹

但是如果你在虚拟环境用 进入解压后的目录,用命令

python3 setup.py install

安装的话会安装到本机而不是虚拟环境中,所以导致虚拟环境启动django找不到这个模块。

//虚拟环境中安装package不需要加sudo,否则会安装到全局环境中

问题3:

这个是我用的方法,可以点击问题2中的那个链接到官网下载 django_cors_headers-3.11.0-py3-none-any.whl 文件,然后放到ubuntu里。

通过如下命令安装

 安装以后可以看到提示 successfully 之后用命令pip list看一下是否安装成功

bingo! 其实很多问题都出现在虚拟环境中装不同版本的包的过程中,所以这里大家要注意。