导入“rest_framework”无法解决。但是我安装了djangorestframework,不知道哪里出了问题

问题描述 投票:0回答:12

这是我的设置.py:

INSTALLED_APPS = [
    'rest_framework',
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'api.apps.ApiConfig'
]
python reactjs django rest django-rest-framework
12个回答
89
投票

如果您使用的是 VSCode,请按 Ctrl + Shift + P -> 输入并选择 'Python:选择解释器' 并进入您的项目虚拟环境。这对我有用。


8
投票
  1. Control+Shift+p。
  2. 输入“Python:选择解释器”并选择相同的。
  3. 从列表中选择您的虚拟环境 如果未列出,请选择 输入解释器路径'
  4. 像这样给出pathe 'c:\users\user\django\myvenv\scripts\python.ex'

6
投票
  1. 在终端中运行

    pip install django-rest-framework
    
  2. 'rest_framework'
    添加到
    settings.py

    中已安装的应用程序
  3. 如果不行,重启编辑器(vscode什么的)


4
投票

如果您选择了正确的解释器(虚拟环境的解释器),但仍然收到该错误怎么办?

然后首先在该虚拟环境的终端中检查你的pip路径。
使用此命令:

which pip

它应该只指向您的虚拟环境文件夹所在的路径,例如:

virtualenv 名称/bin/pip
name_of_virtualenv/脚本/pip

如果另有显示,要解决此问题:

  1. 删除虚拟环境文件夹并重新创建。
  2. which pip
    现在必须在新的虚拟环境终端中显示正确的路径。
  3. 重新安装软件包。

2
投票

@nayburz 和 @Faseela 的答案对我有用。

  1. Control+Shift+p。
  2. 输入“Python:选择解释器”并选择相同的。
  3. 从列表中选择您的虚拟环境,如果未列出,请选择“输入解释器路径”
  4. 虚拟环境 python.exe 文件的路径。

我的是:D:\Python\Python_Django rydjango nv\Scripts\python.exe

您可以根据您的项目找到类似的路径


1
投票

对于使用 venv 的其他人,如果执行“Python:选择解释器”并选择您的 venv 不起作用,请尝试以下步骤。这些适用于 Mac。

  1. 打开终端
  2. 导航到您的项目文件夹。
  3. 激活虚拟环境(> ctivate 中的源 {path_to_venv_home})
  4. 现在用“code”打开 vscode 。

如果是“代码”。不起作用,那么应该添加到您的路径中。 尝试 https://code.visualstudio.com/docs/setup/mac

中的“从命令行启动”部分

1
投票

如果您已按照此处所述进行了所有设置,但仍然存在该错误。如果您位于找到虚拟环境的目录中,请确保检查代码编辑器。

值得一提的是,当您打开代码编辑器(例如 VS code)时,请确保在找到虚拟环境(venv)的目录中打开。肯定会是这样的。


0
投票

添加你的Python文件,如C:\Users\hendrialqory\AppData\Local\Programs\Python\Python39-32\Lib\site-packages,转到设置环境变量并输入你的文件python。


0
投票

我也遇到了类似的问题。

  • 转到您的 venv 文件夹 > Lib
  • 确保您看到 djangorestframework 和 rest_framework 文件夹
  • 如果它们不存在,您应该知道您正在安装这些软件包 以错误的方式。

0
投票

对于使用 VSCode 的用户,如果选择 Python 解释器仍然失败,并且当您运行

which pip
时,结果没有指向您的虚拟环境,有些
path/to/myvenv/bin/pip
,请执行以下操作:

  1. 删除当前虚拟环境
  2. 导航到虚拟环境应位于的目录。
  3. 通过运行以下命令创建一个新的:
    python3 -m venv myvenv
  4. 通过运行以下命令激活虚拟环境:
    source venv/bin/activate
  5. 如果一切顺利,那么您应该能够看到虚拟环境的名称出现在终端提示符中。例如,
    (myvenv) user@computer:~$
  6. 现在,运行
    which pip
    应输出类似
    /path/to/myvenv/bin/pip
    的内容,以确认您的虚拟环境已设置并激活。
  7. 您现在可以将
    rest_framework
    软件包重新安装为
    pip install djangorestframework
    ,并且 pylance 应该能够识别
    rest_framework

至少,当我遇到同样的 linter 问题时,这对我有用。另请注意,每次在运行任何命令之前打开新的终端窗口时,您都需要激活虚拟环境,例如

pip, python
和其他命令。


0
投票

这就是我解决问题的方法:

  1. 通过“pipenv shell”激活django虚拟环境
  2. 确保我通过“pip install djangorestframework”安装了restframework库
  3. Ctrl/Command + Shift + P 调用解释器并选择当前项目的解释器

0
投票

发表于 2024 年 1 月 10 日 要解决此问题,请在 VS Code 编辑器中按

ctrl + shift + p
,然后选择解释器全局解释器。

如果这不能解决问题,请检查虚拟环境是否已激活。如果已激活,请按

  1. ctrl + shift + p
  2. 点击查找
  3. 检查项目/venv(virtual env)/Scripts/python 并选择它作为解释器。
© www.soinside.com 2019 - 2024. All rights reserved.