Ubuntu:No module named ‘django‘

背景

在网上跟着教程用Django搭建了个blog,准备在Ubuntu上部署。
项目代码已经git clone下来了。使用sudo pip3 install virtualenv安装虚拟环境,然后 cd 到项目目录的上一级,使用sudo virtualenv env01创建虚拟环境。

问题

cd 到项目文件里,使用python3 manage.py collectstatic时报错了,为No module named 'django',于是我使用sudo pip3 install django安装Django,发现之前确实没有安装Django。

安装完后,继续使用python3 manage.py collectstatic仍然显示No module named 'django'

解决过程

我使用sudo python3 进入控制台。

import sys
print(sys.path)
"""输出
['', '/usr/lib/python310.zip', '/usr/lib/python3.10', '/usr/lib/python3.10/lib-dynload', '/home/sites/blog/env01/lib/python3.10/site-packages']
"""
# 通过安装Django的信息发现Django安装在 /usr/local/lib/python3.10/dist-packages/ ,不在环境变量里。
sys.path.append('/usr/local/lib/python3.10/dist-packages/')
print(sys.path)
"""输出
['', '/usr/lib/python310.zip', '/usr/lib/python3.10', '/usr/lib/python3.10/lib-dynload', '/usr/local/lib/python3.10/dist-packages', '/usr/lib/python3/dist-packages', 'usr/local/lib/python3.10/dist-packages']
"""
# 添加到环境变量里了,然后退出控制台。
exit()

再次python3 manage.py collectstatic,还是显示No module named 'django'

然后我意识到,也许我的虚拟环境里没有Django,通过cd /home/sites/blog/env01/lib/python3.10/site-packagesls查看到目录_distutils_hack setuptools-65.3.0.dist-info distutils-precedence.pth setuptools-65.3.0.virtualenv pip _virtualenv.pth pip-22.2.2.dist-info _virtualenv.py pip-22.2.2.virtualenv wheel pkg_resources wheel-0.37.1.dist-info setuptools wheel-0.37.1.virtualenv,确实没有Django。

于是我使用sudo pip3 install --target=/home/sites/blog/env01/lib/python3.10/site-packages django,将Django安装到虚拟环境中。

完成后,python3 manage.py collectstatic,问题解决了。

总结

使用虚拟环境时,要用sudo pip3 install --target=虚拟环境的包目录 要安装的的包来安装包。

ModuleNotFoundError: No module named 'django'错误是因为在pycharm中没有找到django模块。这可能是由于以下几个原因造成的: 1. 没有安装django模块。您可以通过在终端中运行以下命令来安装django模块:`pip install django`。 2. 您是否在正确的Python环境中安装了django模块?请确保您在使用pycharm时使用的是正确的Python环境。您可以通过在pycharm中的设置中检查Python解释器来确认。 3. 如果您使用的是Python 3.x版本,那么您需要安装django的兼容版本。MySQL-python不支持Python 3.x,您可以尝试安装mysqlclient模块来解决这个问题。您可以通过在终端中运行以下命令来安装mysqlclient模块:`pip install mysqlclient`。 4. 可能是环境配置问题。请确保您的pycharm环境配置正确,并且可以正确加载django模块。您可以参考引用提供的链接来解决pycharm无法使用conda环境的问题,以确保您的环境正确配置。 综上所述,要解决ModuleNotFoundError: No module named 'django'错误,您需要确保已安装django模块,正确配置Python环境,并尝试安装兼容Python 3.x的mysqlclient模块。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [ModuleNotFoundError: No module nameddjango](https://blog.csdn.net/weixin_46322789/article/details/127431140)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* [Django重装mysql后启动报错:No module named ‘MySQLdb’的解决方法](https://download.csdn.net/download/weixin_38722052/13987704)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值