ユーザーがログアウトしてログインページに直接リダイレクトできるようにしたいと思います。Django ユーザー認証ページ(https://docs.djangoproject.com/en/dev/topics/auth/)で、
logout_then_login(request[, login_url])
Logs a user out, then redirects to the login page.
URL name: No default URL provided
Optional arguments:
login_url: The URL of the login page to redirect to. Defaults to settings.LOGIN_URL if not supplied.
私が直面している問題は、ページをクリックすると、ログインページに移動する代わりにページがリロードされることです。
私のコードは以下の通りです:
@login_required
def main(request):
"""
main view
"""
path = reverse('home', kwargs={'userpk': request.user.pk})
return HttpResponseRedirect(path)
@login_required
def home(request, userpk):
"""
home page view
"""
if int(userpk) != request.user.pk:
return HttpResponseForbidden()
return render(request,
'lex/main.html',
dictionary={'user': request.user,
'userpk': userpk})
def logoutnlogin(request):
"""
Logout n login back
"""
return logout_then_login(request,login_url=main(request))
私はどこか分からない間違いをしていると思います..いくつかのガイダンスが必要です...