当前位置: 首页 > 知识库问答 >
问题:

无法在virtualenv中导入django,但在停用时可以工作

柯曦
2023-03-14

我试图使用Ubuntu 16.04在亚马逊AWS上部署我的Django项目。我正在运行python版本2.7.12和Django 1.10.5。我创建了名为venv的虚拟环境,然后激活了它。我得到这个错误,当我试图运行pythonmanage.pyrunserver。

Traceback(最近一次调用最后一次):文件"manage.py",第17行,在"不能导入Django。你确定它安装和"重要错误:不能导入Django。您确定它已安装并在您的PYTHONPATH环境变量上可用吗?你忘记激活虚拟环境了吗?

然后我意识到Django可能不在我的Python路径中。所以我加了

导出PYTHONPATH="/usr/本地/lib/python2.7/dist-包/django"

进入我的venv/bin/激活脚本。现在激活了虚拟环境,我可以进入Python并输入

导入sys
sys.path
['', '/usr/local/lib/python2.7/dist-pack/django','/home/ubuntu/TravelBuddy/venv/lib/python2.7','/home/ubuntu/TravelBuddy/venv/lib/python2.7/plat-x86_64-linux-gnu','/home/ubuntu/TravelBuddy/venv/lib/python2.7/lib-tk/home/ubuntu/TravelBuddy/venv/lib/python2.7/lib-old,/home/ubuntu/TravelBuddy/venv/lib/python2.7/lib-dynload,/usr/lib/python2.7,/usr/lib/python2.7/plat-x86_64-linux-gnu,/usr/lib/python2.7/lib-tk,/home/ubuntu/TravelBuddy/venv/loc/lib/python2.7/site-packages','/home/ubuntu/TravelBuddy/venv/lib/python2.7/site包']

正如您现在看到的,django确实在我的python路径中。我以为这会解决问题,但它没有:它仍然说无法导入Django。现在我很困惑,因为当我停用我的virtualenv并导入Django时,它确实起作用了。

这是当我关闭虚拟机并sys.path时打印出来的

['''/usr/local/lib/python2.7/dist-packages/django'、'/usr/lib/python2.7'、'/usr/lib/python2.7/plat-x86_64-linux-gnu'、'/usr/lib/python2.7/lib-tk'、'/usr/lib/python2.7/lib-old'、'/usr/lib/lib/python2.7/lib-dynload'、'/usr/local/lib/python2.7/dist-packages']

共有2个答案

潘振国
2023-03-14

1-安装python3brew安装python32-安装djangopip3安装django

西门靖琪
2023-03-14

好吧,我找到问题所在了。事实证明,当我启动我的虚拟环境时,我使用了sudo命令,但是当我pip安装我的包时,我没有使用sudo命令,这导致了安装包时的权限问题或某种问题。所以它让姜戈没有出现在路上。启动虚拟环境时,不要使用sudo命令...

 类似资料:
  • 问题内容: 我正在虚拟环境中使用烧瓶。我可以通过pip安装matplotlib,并且可以在Python会话中进行安装。但是,当我将其导入为 我收到以下错误: 我对为什么它要求我将Python安装为框架感到困惑。它不存在吗?“将Python作为框架安装”是什么意思,如何安装? 问题答案: 这个解决方案对我有用。如果你已经在虚拟环境中使用pip安装了matplotlib,则只需键入以下内容: 然后在那

  • 我在让openpyxl写入Excel文件时遇到了一个问题,当我在PyCharm Python控制台中运行以下代码时,它可以正常工作,但是当我创建 C:\Users\David\PycharmProjects\VirtualEnv1\VirtualEnv1\Scripts\python。exe C:/Python27/virtualenv-15.0。1/虚拟/测试。py回溯(最后一次调用):文件“C

  • 我可以在python控制台中导入pyscopg2,但不能在jupyter笔记本中导入。 我通过anaconda-Navigator安装了。 Jupyter笔记本: ['/Users/me/Anaconda/MLJSONs'、'/usr/local/anaconda3/lib/python37.zip'、'/usr/local/anaconda3/lib/python3.7'、'/usr/local

  • 问题内容: 我已经在ubuntu中安装了openpyxl。 现在我正在运行带有xlsx文件的openpyxl。 导入模块时,它给我以下错误。 谁能知道我该怎么做才能解决问题? 问题答案: 我想你要: 请注意此处名称的大写。

  • 之前我安装了pytorch,PIL,numpy。。。使用pip。之后我安装了python3。因此,ipython从python2切换到python3。我必须使用ipython2来启动python2内核。这些模块在ipython2中仍然可以很好地工作,但当我使用python、python2、python2.7运行python脚本时,它们都会引发以下问题: 没有名为PIL的模块(Numpy, torc

  • 问题内容: 我已经在pycharm中配置了virtualenv,当使用python manage.py命令时,显示错误: 我应该如何解决,我已经安装了django。 问题答案: 我认为使用django的最佳方法是使用virtualenv,它是安全的,你可以在virtualenv中安装许多应用程序,而这不会影响系统的任何外部空间。vitualenv使用python的默认版本,与在系统中安装virtu