我使用的是安装了以下应用程序的Django 1.8.7:
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'bootstrap3',
'myapp',
'storages',
'rest_framework',
'django_tables2',]
我使用内置的django.contrib.auth.urls来创建用于登录、更改密码等的页面。我在主页中将LOGOUT_REDIRECT_URL设置为“/ settings.py”,就像我在LOGIN_REDIRECT_URL中所做的那样。通过页面注销用户可以很好地工作,但之后我仍然留在注销页面。在登录时这不是问题,登录重定向的工作方式应该是正常的。
我的urls.py的一部分:
url(r'^accounts/', include('django.contrib.auth.urls'), {'template_name': 'registration/login.html'}),
我的settings.py:
LOGIN_REDIRECT_URL = '/home'
LOGOUT_REDIRECT_URL = '/home'
提前感谢您的任何帮助或想法!
发布于 2017-02-28 20:16:07
LOGOUT_REDIRECT_URL
设置为added in Django 1.10。
在早期版本的Django中,可以在logout
视图的URL模式中设置next_page
。
from django.conf import settings
from django.conf.urls import url
from django.contrib.auth import views
url_patterns = [
...
url(r'^logout/$', views.logout, {'next_page': settings.LOGOUT_REDIRECT_URL}, name='logout'),
...
]
发布于 2019-03-13 06:29:04
根据Django 2.1 (2019),你可以这样做
1)。在settings.py中设置LOGOUT_REDIRECT_URL =‘您要重定向到的url的名称’
2)。在urls.py中
import settings
from django.contrib.auth import views as auth_views
urlpatterns = [
...,
path('logout/', auth_views.LogoutView.as_view(next_page=settings.LOGOUT_REDIRECT_URL), name='logout'),
...,
]
发布于 2017-02-28 20:13:31
我认为你在两种情况下都会重定向到相同的主页,我的意思是登录和logout.You应该重定向LOGOUT_REDIRECT_URL =‘/ cases.By - page’(你应该重定向到登录页面)。
https://stackoverflow.com/questions/42508414
复制相似问题