Django Rest 框架的 ModuleNotFoundError

Posted

技术标签:

【中文标题】Django Rest 框架的 ModuleNotFoundError【英文标题】:ModuleNotFoundError For Django Rest Framework 【发布时间】:2020-07-31 07:15:04 【问题描述】:

我已经使用pip install djangorestframework 安装了 django rest 框架 并将其余框架添加到 INSTALLED_APP:

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'rest_framework',
    'rest_framework.authtoken',
] 

但当我运行python3 manage.py runserver 时仍然出现此错误:

ModuleNotFoundError: 没有名为“rest_framework”的模块

为了纠正这个错误,我已经尝试了所有这些:

1.尝试使用:pip3 install djangorestframework安装django rest框架

2.将'rest_framework'添加到INSTALLED_APPS后检查,

3.我的虚拟环境是活跃的

4.我添加了 markdown 和 django-filter 也使用: pip install markdown pip install django-filter

5.升级我的点子使用:python -m pip install --upgrade pip

6.尝试将'rest_framework' 添加为 INSTALLED_APPS 中的第一个应用

7.尝试停用并再次激活虚拟环境

我正在使用 Django == 3.0.2 和 Django REST Framework == 3.11.0

那么现在我应该怎么做才能消除这个错误呢??

【问题讨论】:

您是否从用于安装软件包的同一终端运行runserver 命令? 是的,我正在使用相同的 【参考方案1】:

您的 django 版本似乎与您的 django rest 框架不兼容。所以如果您将 django 和 django rest 框架都更新到最新版本会更好

因此,您只需使用以下命令卸载 django 和 django rest 框架:

pip uninstall djangopip uninstall djangorestframework

然后使用以下命令再次安装:

pip install djangopip install djangorestframework

【讨论】:

【参考方案2】:

唯一的问题是我在将 django 和 django rest 框架更新到最新版本后使用了错误的版本

【讨论】:

以上是关于Django Rest 框架的 ModuleNotFoundError的主要内容,如果未能解决你的问题,请参考以下文章

带有 Django 2.0 的 Django REST 框架 URL

Django REST框架 -1

django.test.client 上的 Django rest 框架导入错误

Django Rest 框架令牌认证

使用 django-allauth 和 django-rest 框架

Django rest框架认证测试