DJango пользователь не выходит из системы - PullRequest
1 голос
/ 06 мая 2020

Я новичок в DJango и пытаюсь авторизовать пользователя. Мой логин работает нормально, но мой пользователь не выходит из системы.

Мое представление выхода:

from django.contrib.auth import logout
from django.contrib.auth.models import User

class LogoutView(generic.View):
    @staticmethod
    def get(request):
        if User.is_authenticated:
            # Debug statement
            print('if')
            logout(request)
            return redirect('login')
        else:
            return redirect('index')

Мой URL работает нормально, потому что когда я go - / logout / , мой оператор отладки выполняет

, но if User.is_authenticated: всегда возвращает объект (true).

Как я могу решить эту проблему. Спасибо

1 Ответ

2 голосов
/ 06 мая 2020

User.is_authenticated - это не то, что вам следует делать. Пользователь - это класс, покажите, что у него будут объекты, которые показаны в вашем запросе, который уже существует, и это не имеет ничего общего с пользователем, который занимается серфингом. В то время как request является объектом пользователя, который несет много вещей, одним из них является user.

Это должно быть:

request.user.is_authenticated:
...