PyCharm中出现了“未解决引用:'django'”错误

36

我正在尝试导入:

from django.db import models

PyCharm会在django.db下划线,并且抱怨:Unresolved reference 'django'

我该如何让PyCharm识别Django?


1
你可能需要在PyCharm中设置正在使用的Python环境。你是否在使用virtualenv? - anupsabraham
3
通常情况下,从“文件”→“设置”→“项目解释器”中选择您的解释器应该可以工作。如果没有列出来,请添加它。 - anupsabraham
12个回答

48

我假设你正在使用一个virtualenv,它位于同一目录下的其他项目文件中。Python应该准确知道那个路径。因此,Pycharm可能正在使用错误的解释器。

转到设置->项目:->项目解释器->切换到正确的路径

在解释器包中,应该已经安装了Django包。如果没有,在这里/终端上安装它。


30

将项目的根文件夹标记为“Sources root”,这对我很有效。 内容根目录


2
我已经选择了正确的virtualenv并安装了django,但我的应用程序仍显示为“未解决的引用”。通过在“文件>设置>项目结构”中将项目根文件夹设置为“源”,问题得到了解决。(如此处所述) - monkut
1
对我来说可以运行...针对PyCharm 2019.1有所不同... PyCharm / 首选项 / 项目:<mydir> / 项目结构...然后将您的<myproject>文件夹标记为源。 - user1546081
我可以证实这解决了我在PyCharm 2019.1上的问题。 - Fathy
1
这也解决了我的问题,谢谢!我在 Mac 上通过导航到 Pycham > Preferences > My Project > Project Structure 来完成。 - Ezra_Bender

18

以上答案只是部分回答。

问题描述:我安装了多个Python版本,并在其中一个Python版本中安装了Django。存在两个问题:

  • 问题1:Pycharm具有错误的python解释器。需要更改 Project Interpreter 为安装Django的Python版本。解决方案:按照以下所有步骤进行操作。

  • 问题2:Django未列在包列表中。需要在Pycharm环境中提供已安装的Python包。解决方案:按照以下所有步骤操作,但不要执行第三步。

解决方案: 按照以下步骤执行。

  1. 在首选项/设置中进入Project > Project Interpreter
  2. 在右侧单击设置图标 > 添加本地
  3. 基础解释器中选择正确的Python版本
  4. 选中继承全局站点包对所有项目可用的复选框
  5. 单击确定

完成此操作后,在Project Interpreter中您将能够在软件包列表中看到Django


2
在更新的版本中,“基本解释器”被称为“Virtualenv环境”。 - Snekse

6
我遇到了这个问题,它导致我的单元测试无法运行。
我发现在升级 PyCharm 后,它将我的Python解释器设置为了一个虚拟环境中的版本,而我不再在该项目中使用。因此,我将其设置为全局 Python 环境中的C:\Python,一切都像魔术般地正常工作了。
希望这能帮助某些人。

Pycharm 重启对我很有帮助。 - LukaszTaraszka

6
如果您使用Python2.7创建项目,并在Python2.7路径下安装了Django,则该项目可以正常工作。然后,您将项目解释器切换到Python3.5,但是此路径没有安装Django,则会出现此问题。
参考截图: enter image description here

5

菜单 -> 无效缓存/重启 -> 无效并重启


5

如果您以前已经成功安装了Django,但安装位置与项目位置不同:

在PyCharm中转到设置>项目>项目解释器。在项目解释器的右侧,单击设置图标并选择添加本地

然后在新环境中勾选这两个复选框:

  • 继承全局站点包
  • 对所有项目可用

然后按确定应用按钮等待将解释器安装到您的项目位置。


4

您可以通过设置PyCharm使用您已经为该项目设置的虚拟环境来使其识别它。

步骤1:打开偏好设置 PyCharm > Preferences open preferences

步骤2:搜索 interpreter 在右侧窗口中,选择要在 Project Interpreter 中使用的虚拟环境。 select interpreter

步骤3(附加):如果列表中没有显示,则添加您的环境

  1. 选择“显示所有解释器”,然后在弹出窗口中,在左下角单击+图标 show all box

  2. 选择按钮 Existing Environment ,选择您的虚拟环境,然后选中“使其对所有项目都可用”如果您将此环境用于其他项目,则单击“确定”。 add existing environment

步骤4:在偏好设置窗口中,点击应用或直接点击ok按钮。等待几秒钟,Django变量就应该在您的项目中可用了。


没错。你应该将Python文件定位在virutanenv目录中,而不是系统Python文件。 - Alston

3

这个网站包对我有效。(在20191218日,使用最新版本的PyCharm和python3.7.5) 输入图片描述


Mac 版本是 Catalina 10.15.2 (19C57)。 - MarsYoung

1
我也遇到了这个问题。实际上,我面临这个问题是因为在Pycharm中没有安装django包。因此,我进入以下路径,点击加号;然后,我搜索了django并安装它。 它运行得很好。 文件>设置>项目>项目解释器

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接