0

すべてのページに表示されるログイン フォームの包含タグを作成しました。しかし、ログインに成功した後、ページをリダイレクトできません。

これが私のコードです:

from django import template
from django.contrib.auth import authenticate, login
from django.http.response import HttpResponseRedirect

register = template.Library()

def costumlogin(context):
    request = context['request']
    if request.user.is_anonymous():
        state = "Please log in below..."
        username = password = ''
        if 'mylogin' in request.POST:
            username = request.POST.get('username')
            password = request.POST.get('password')

            user = authenticate(username=username, password=password)
            if user is not None:
                if user.is_active:
                    login(request, user)
                    state = "You're successfully logged in!"
                    return HttpResponseRedirect(request.META.get('HTTP_REFERER','/'))
                else:
                   state = "Your account is not active, please contact the site admin."
           else:
                state = "Your username and/or password were incorrect."
        return {'username':username, "state": state}

register.inclusion_tag('registration/login.html',takes_context = True)(costumlogin)
4

1 に答える 1