为什么Pycharm仍然引用我的项目

时间:2016-07-12 14:54:04

标签: flask pip pycharm virtualenvwrapper

是Flask开发的新手,我第一次使用像Pycharm这样的IDE,所以请原谅无知。

因此,在玩我正在研究Flask的项目时,我创建了一个名为venv的虚拟环境。所以我的项目树看起来像:

  

my_project_directory
  Project_specific_directories_and_files
  requirements.txt
  venv

要激活虚拟环境,我曾经做过venv / bin / activate,我的项目会根据需要运行。

我后来遇到了virtualevnwrapper并决定使用它。在安装并设置之后,我转向使用虚拟环境的virtualenvwrapper方式,并从我的项目结构中完全删除(删除)了venv目录。删除venv后的新项目结构如下:

  

my_project_directory
  Project_specific_directories_and_files
  requirements.txt

一切正常。该项目按预期运行。 但是,现在删除venv目录后,当我在Pycharm中打开我的项目时,我的导入语句如下:

from flask import Flask, render_template, redirect, url_for, request, session, flash  # , g
from flask_sqlalchemy import SQLAlchem

我尝试导入的所有包都在Pycharm IDE中被加下划线为错误。我在Pycharm中打开了Python控制台,试图调试错误并且它出现以下错误:

  

错误:无法运行程序“/ Users / my_user_name / Desktop / some_parent_directory / my_project_directory / venv / bin / python”(在目录“/ Users / my_user_name / Desktop / some_parent_directory / my_project_directory”中):error = 2,没有这样的文件或目录

现在我认为显然Pycharm仍在使用它的缓存。所以我尝试使缓存失效并重新启动Pycharm,如here所述,但问题仍然存在。

现在我有两个问题:

  1. 为什么Pycharm表现得这样?我完全删除了venv目录等。为什么它仍然引用旧的(venv)位置?
  2. 如果它真的无法解决依赖关系,那么我的项目究竟运行得如何呢?它不应该破坏应用程序吗?

1 个答案:

答案 0 :(得分:0)

确定。经过一些进一步的挖掘,我能够得到Pycharm中标记的错误纠正。我去了Pycharm - >偏好 - >项目:my_project_directory - >项目口译员&发现它出于某种原因'仍然指向较旧的venv目录。从“项目口译员”的下拉菜单开始:'我选择了virtualenvwrapper&创建的virtualenv的路径。通过Apply-> Ok保存更改。这从Pycharm中的代码中删除了错误指示。虽然已经解决了,但是对于我来说仍然没有解决这个问题的原因。 - qre0ct 7月12日17:13

此外,我还从项目口译员名单中删除了未使用/删除的口译员,转到了更多' “项目口译员”中的部分'部分和使用' - '在底部删除不需要的。