Django пользовательский декоратор входа в систему, проверяющий, существует ли сеанс - PullRequest
0 голосов
/ 18 июня 2020

Я пытаюсь реализовать пользовательский вход в Django, используя пользовательский бэкэнд аутентификации. Это шаги. AttributeError: 'NoneType' object has no attribute 'session'

Мне действительно нужно реализовать это как декоратор:

if not request.session.get('user_logged_in_custom_backend'):
        return redirect('/login')

вид:

from django.contrib.auth.decorators import user_passes_test
def login(request):
        user = authenticate(username=username,password=password)
        if user:
            request.session['user_id'] = user.pk

def login_required_custom(request):
    return request.session.get('user_id') or False


@user_passes_test(login_required_custom, login_url='/login/')
def HomePage(request):
   return HttpResponse('Only login users should access this page')
...