我正在尝试安装Django-rest-auth + registration。在文档中,它说要安装我按照此处找到的步骤安装的 Django-allauth 。但是,一旦我完成并迁移,我的应用程序似乎使用的模板与我最初设置的模板不同。
我正在使用 Django Rest Framework 和 Angular JS。
设置.py
INSTALLED_APPS = [
...
# Django Rest Framework
'rest_framework',
'rest_framework.authtoken',
# All auth
'django.contrib.sites',
'allauth',
'allauth.account',
'allauth.socialaccount',
# Rest auth
'rest_auth',
'rest_auth.registration',
# My app
'myapp',
]
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [],
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
'django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
# `allauth` needs this from django
'django.template.context_processors.request',
],
},
},
]
AUTHENTICATION_BACKENDS = (
# Needed to login by username in Django admin, regardless of `allauth`
'django.contrib.auth.backends.ModelBackend',
# `allauth` specific authentication methods, such as login by e-mail
'allauth.account.auth_backends.AuthenticationBackend',
)
SITE_ID = 1
我的项目文件夹中的urls.py如下所示:
from django.conf.urls import url, include
from django.contrib import admin
from django.views.generic import TemplateView
urlpatterns = [
url(r'^admin/', admin.site.urls),
# My api url
url(r'^api/', include('myapp.urls')),
# My application url
url(r'^$', TemplateView.as_view(template_name='base.html')),
# all auth Url
url(r'^accounts/', include('allauth.urls')),
# Rest-auth url
url(r'^rest-auth/', include('rest_auth.urls')),
url(r'^rest-auth/registration/', include('rest_auth.registration.urls')),
]
在安装 all-auth 应用程序之前,转到 127.0.0.1:8000 会返回一个使用 base.html 文件的页面。但是,现在我得到一个包含以下内容的页面:
菜单:
- 链接更改电子邮件
- 登出
我究竟做错了什么?以及如何解决问题。谢谢。任何帮助是极大的赞赏!