11

這是我第一次和Django的休息和Django中的Oauth工具 工作我下面這個教程 oauth2-with-django-rest-framework 但是當我運行python管理.py遷移出現以下錯誤:無法導入的API設置「oauth2_provider.ext.rest_framework.OAuth2Authentication「DEFAULT_AUTHENTICATION_CLASSES」

ImportError:無法爲API設置'DEFAULT_AUTHENTICATION_CLASSES'導入'oauth2_provider.ext.rest_framework.OAuth2Authentication'。 ImportError:沒有名爲ext.rest_framework的模塊。

什麼問題?我應該安裝另一個模塊嗎? 我的虛擬環境包括:

CERTIFI == 2017年4月17日

chardet的== 3.0.4

Django的== 1.11.2

Django的擴展== 1.8.1

Django的OAuth的工具包== 1.0.0

djangorestframework == 3.6.3

IDNA == 2.5

oauthlib == 2.0.2

pytz == 2017.2

請求== 2.18.1

6 == 1.10.0

Unidecode = = 0.4.21

urllib3 == 1.21.1

+0

請出示您的設置文件 – Exprator

+0

設置文件包含:INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 「django.contrib.sessions 」, 'django.contrib.messages', 'django.contrib.staticfiles', '業務', 'rest_framework', 'django_extensions', 'oauth2_provider',爲安裝的AP和rEST_FRAMEWORK = { ] 'DEFAULT_AUTHENTICATION_CLASSES':( 'oauth2_provider.ext.rest_framework.OAuth2Authenticatio n', ) } 爲django休息設置 – Akamee

回答

30

它看起來像oath2_provider.exthas been movedoauth_provider.contrib。你可以嘗試安裝的django-oauth-toolkit的舊版本,或嘗試從DEFAULT_AUTHENTICATION_CLASSES改變值:

'oauth2_provider.ext.rest_framework.OAuth2Authentication', 

到:

'oauth2_provider.contrib.rest_framework.OAuth2Authentication', 

請注意,本教程是一兩年的時候,你可能會發現其他像這樣的問題。

+0

他們應該更新他們的文檔https:// django-oauth-toolkit。readthedocs.io/en/latest/rest-framework/getting_started.html –

+0

@RohitSthapit'他們'可能永遠看不到那條評論。而不是在這裏抱怨,爲什麼不創建一個更新指令的拉取請求。 – Alasdair

相關問題