无法在Django中导入rest_framework

时间:2017-05-17 19:57:20

标签: python django python-2.7 django-rest-framework

我正试图站起来一个Django网站,我正试图用它来设置Report_builder。我只是让报表生成器的前端工作,但它没有返回任何数据。我怀疑问题出在我的休息框架上。设置没有自动创建,现在当我尝试导入它来创建序列化器时,根本无法识别。

以下是我的设置页面:

  REST_FRAMEWORK = {
     'DEFAULT_AUTHENTICATION_CLASSES': (
         'rest_framework.authentication.SessionAuthentication',
     ),


 }

我是否可以在错误的地方安装休息框架或者? 我有最新版本。

3 个答案:

答案 0 :(得分:0)

在你的setting.py中,你必须:

INSTALLED_APPS = [
   ...
   'rest_framework',
   ....
]

REST_FRAMEWORK = {
'DEFAULT_AUTHENTICATION_CLASSES': (
    'rest_framework.authentication.SessionAuthentication',
),
}

Django Rest Framework

的教程所述

答案 1 :(得分:0)

enter image description here

即使在

之后,也要尝试更改适当的python环境(项目文件夹中的Virtual Env)。

INSTALLED_APPS = [    ...    'rest_framework',    .... ]

您无法导入rest_framework。

答案 2 :(得分:0)

最近我遇到了同样的问题,不仅是rest_framework。上面已经回答了我的答案,但是对于初学者的检查却没有完全解决。

  • 确保已将框架初始化为settings.py 您应该将它放在INSTALLED_APPS和REST_FRAMEWORK下

您可能面临的主要问题是您拥有的python环境。要检查是否已安装,请运行: pythonimport rest_framework 极有可能会向您返回错误ImportError: No module named rest_framework。 因此,该修复程序正在使用python3来运行。

如果您没有运行pip install djangorestframework

需要注意的是:根据所运行的python,检查您拥有的djangorestframework版本,因为rest_framework 1.9及更高版本将无法在Python3中使用