我正在使用django-allauth登录页面将用户登录到我的管理面板。 这很好用,但是当他们从管理面板注销时,我希望他们直接返回到/accounts/login/页面(最好是/accounts/login/?next=/admin/surveys/survey/),而不是到/admin/logout/页面上显示“感谢您花费宝贵时间与本站一起度过”。 我尝试在设置文件中使用LOGOUT_URL属性,但它似乎不能实现我上述描述的功能。以下是我相关代码的一部分:
# urls.py
from django.conf.urls import patterns, include, url
from django.views.generic import TemplateView
from mysite import views
from django.contrib import admin
admin.autodiscover()
from django.contrib.auth.decorators import login_required
admin.site.login = login_required(admin.site.login)
from django.contrib.auth import views as auth_views
urlpatterns = patterns('',
url(r'^$', TemplateView.as_view(template_name='landingpage.html'), name='landingpage'),
url(r'^surveys/', include('surveys.urls', namespace="surveys")),
url(r'^admin/', include(admin.site.urls)),
url(r'^submitfeedback/$', views.submitfeedback, name='submitfeedback'),
# tried this but it didn't work: url(r'^logout/$', 'django.contrib.auth.views.logout', {'next_page': '/accounts/login/'}),
# tried this but it didn't work: url(r'^admin/logout/$', 'django.contrib.auth.views.logout', {'next_page': '/accounts/login/'}),
## below for django-allauth
url(r'^accounts/', include('allauth.urls')),
)
# settings.py
LOGIN_REDIRECT_URL = "/admin/surveys/survey/"
LOGOUT_URL = "/accounts/login/"