繁体   English   中英

导入 Django 模块时出现 VS Code 错误

[英]VS Code error when importing Django module

我正在开发一个网络应用程序,我使用 Django 作为框架。
我在 macOS 上使用 VS Code。

当我尝试导入一些 Django 模块时出现错误。 这是我的错误代码的屏幕截图。

我的代码出错的图片

错误消息如下:

[pylint] E0401:无法导入“django.conf.urls”

我在使用 Python 虚拟环境时也遇到了这个错误。 就我而言,这是因为我在我的虚拟环境中安装了 Django,而我的基本环境不包含任何名为 Django 的模块。

基地(全球)环境在我的全球环境中没有名为 Django 的模块

当我在我的虚拟环境( myDjangoEnv )中使用相同的命令时在此处输入图片说明

修复:

  1. 现在我的理解是pylint使用python解释器来分析我们的代码并在我们编写代码时标记错误。
  2. 由于我的系统中有三个 python 环境,因此我的 VS Code 可以使用三个不同的 python 解释器。

所以如果 VS code 使用来自基础环境的 Python 解释器,它将无法识别 Django 模块(导入错误)。 因此,您需要将 Python 解释器更改为虚拟环境中存在的解释器。

听起来很复杂,其实很简单:

  1. 单击屏幕左下角以更改 python 解释器。 改变python解释器
  2. 从可用的 Python 解释器列表中选择。 确保根据当前项目选择合适的解释器。 在此处输入图片说明
  1. 找到项目的虚拟环境。 就我而言,我正在处理一个 Django 项目,我的虚拟环境位于以下路径中:

     C:/Users/abc/Desktop/Virutal36/myLab/Scripts/python.exe
  2. 复制您的虚拟环境的地址。

  3. 在 VS Code 上,选择 File > Preferences > Settings 打开您的用户设置(或使用Ctrl + 快捷方式)。

  4. 使用虚拟环境的完整路径为 python.pythonPath 创建或修改条目,您将很高兴。 就我而言,它是:

     C:/Users/abc/Desktop/Virutal36/myLab01/Scripts/python.exe

https://code.visualstudio.com/docs/python/environments#_manually-specify-an-interpreter

按照图片中提到的步骤进行操作。 有关详细信息,或者如果这不起作用,请进一步阅读!!!

在此处输入图片说明

如果您看不到下拉列表中列出的解释器(安装在虚拟环境中)或选择列出的解释器,请不要纠正错误。

然后,您必须将解释器(安装在 venv 中)的路径提供给 vs 代码。 因为您可能只在您的 venv 中安装了 Django。 当您不使用 anaconda 创建 venv 时会发生这种情况。

纠正措施——

  1. 要检查路径,请激活 venv 并在终端中输入which python ,这将给出路径。 复制路径。

  2. 点击左下角的解释器,下拉,如上图所示。

  3. 单击输入解释器路径。

  4. 粘贴路径已复制。

这将分配正确的解释器并纠正错误。

  1. Ctrl + Shift + P

  2. 输入Python:选择解释器
    现在我们将得到:

    在此处输入图片说明

  3. 选择输入解释器路径在此处输入图片说明

  4. 选择Find...
    然后在此处输入图片说明

检查正确的 django 版本是否已正确安装并处于活动状态?

在活动环境中,在python解释器中调用这段代码应该不会有错误。
from django.conf.urls import url

检查VS studio python环境https://code.visualstudio.com/docs/python/environments

您需要选择正确的环境 因此,转到工具栏中的查看,然后选择命令托盘(ctrl+shift+p) ,然后键入“ python:select interpreter ”,然后选择您开始项目正确虚拟环境

就我而言,我使用 VS Code 命令面板(Shift + Command + P)中的 Select Interpreter 选项解决了这个问题。

我选择了与我的虚拟环境所在的文件夹对应的 Python 解释器选项,它立即解决了问题。

希望它有帮助:)

您使用的是虚拟环境 (mkvirtualenv) 吗? 在这种情况下,您需要使用以下命令确保在虚拟环境中也安装了 django 和 pylint 等。

  1. 处理 [yourEnvName]

  2. pip安装pylint

  3. pip 安装 django

  4. pip 安装 djangorestframework

等等......对于您要使用的所有模块。

在此处输入图片说明

选择全局环境帮助我恢复了这个问题

首先检查您安装 djangorestframework 的要求,其次,如果您在虚拟环境上工作,那么您使用的 pylint 可能不会检查您的虚拟环境,以便您可以在本地安装包。

对我来说,我打开了我的 Django 项目的嵌套文件夹。 所以,Django 找不到venv的模块。

只是提一下,我认为这可能对某人有所帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM