Исключение возможности посещения страницы аутентифицакии после аутентификации

код не прилагаю, т.к вопрос не касается какой-то определенной ошибки. Каким образом можно бы было в Django после того, как пользователь вошел в сессию под своим акком запретить ему посещать страницу входа? В шаблоне писать if not request.user.is_authenticated "показывать" - ну такое себе. Хорошим вариантом бы было вообще на момент когда пользователь в сесси убрать эту страницу, ну или редирект на главную настроить.


Ответы (1 шт):

Автор решения: Sherlock

Декоратор:

def authenticated_user(view_func):
    def wrapper_func(request, *args, **kwargs):
        if request.user.is_authenticated:
            return redirect('/')
        else:
            return view_func(request, *args, **kwargs)
    return wrapper_func

В случае с CBV можете обернуть URLку, или написать класс и наследоватся.

→ Ссылка