django - PyCharm 不使用选定的 virtualenv

标签 django macos virtualenv pycharm

PyCharm 似乎忽略了配置的 virtualenv ,
并改用基本解释器。

在我的项目中 /Users/janos/dev/git/github/bashoneliners我有一个 virtualenv子目录,严格在其中安装我的项目的依赖项:

$ . virtualenv/bin/activate
(virtualenv)janos at kronos in ~/dev/git/github/bashoneliners on master
$ pip -V
pip 1.5.6 from /Users/janos/dev/git/github/bashoneliners/virtualenv/lib/python3.4/site-packages (python 3.4)
(virtualenv)janos at kronos in ~/dev/git/github/bashoneliners on master
$ pip freeze
Django==1.9
Markdown==2.6.5
PyJWT==1.4.0
defusedxml==0.4.1
oauthlib==1.0.3
pep8==1.6.2
pyflakes==1.0.0
python-social-auth==0.2.13
python3-openid==3.0.9
requests==2.9.1
requests-oauthlib==0.6.0
six==1.10.0
tweepy==3.5.0

但是如果我添加这个 virtualenv作为 项目口译员 在 PyCharm 中,
它显示了完全不同的包:

enter image description here

这些包与我系统的基本解释器中的相同 /opt/local/bin/python .这让我抓狂,我真的需要使用 virtualenv 中的软件包,而不是来自我的系统。

这适用于 PyCharm 社区版 5.0.3。

我以前使用旧版本的 PyCharm 没有这个问题。
我尝试创建一个全新的 virtualenv ,
无论是在命令行上还是使用 PyCharm,
并使缓存无效并重新启动,但似乎没有任何效果。
PyCharm 总是显示相同的包列表,
virtualenv 的包.
即使我创建一个空的 virtualenv在 PyCharm 中,
它不是空的,而是充满了相同的包列表。

当我在命令行上运行时,我的项目运行良好,
比如运行 Django 管理命令,单元测试,一切。
我只有 PyCharm 有问题。

如果我尝试安装软件包,例如 Django,
使用 PyCharm,
我收到此错误:

enter image description here

当然,/opt/local/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages 上的权限被拒绝,那是系统解释器。
它应该尝试在那里安装软件包,
但在 /Users/janos/dev/git/github/bashoneliners/virtualenv .

显然它没有使用 pip来自 virtualenv ,但来自系统。
我需要使用 virtualenv 中的那个.

最佳答案

这在 JetBrains 的问题跟踪系统中被记录为错误,
所以希望它会很快得到解决。

https://youtrack.jetbrains.com/issue/PY-18074

一种可能的解决方法是回退到 PyCharm 的先前版本:

https://confluence.jetbrains.com/display/PYH/Previous+PyCharm+Releases

截至 2016 年 1 月 6 日,virtualenv在 PyCharm 4.5.4 中对我来说很好。
一些virtualenv以前使用 PyCharm 5.0.3 注册似乎无效,但没关系。我实际上删除了所有注册的口译员,只重新添加了 virtualenv我需要。

这个旧版本的奇怪之处在于,有时 PyCharm 会显示不正确的 Python 版本(2.7 而不是 3.5),但它会根据 virtualenv 显示正确的模块列表。 ,并且编辑器没有显示构建错误,因此 Python 版本混淆似乎不会导致问题(只是有点吓人)。

关于django - PyCharm 不使用选定的 virtualenv,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34560013/

相关文章:

python - 使 Django 的 login_required 成为默认值的最佳方法

django - commit_on_success 装饰器应该只在 Django 的 View 中使用吗?

django - 如何在同一个模板中使用两个不同的 Django Form?

python - Django:在上下文中自动导入 MEDIA_URL

objective-c - 如何确定 Mac OS X 10.6 中的内核位数?

macos - 如何在主机中查看容器内的真实进程?

macos - fswatch 仅监视特定文件扩展名

python - 为什么我不能在Centos 5.5下安装Python 2.7?

python-2.7 - Python 2.7 通过pip(虚拟环境)安装opencv

python - 由于 SSL 错误,无法让 virtualenv 工作