Использовать следующий из url в пользовательском представлении входа в систему

У меня есть этот настроенный вид login проблема в том, что когда у меня есть вид с декораторами login url с next не работает, а перенаправляет меня на страницу, которую я отметил в моем настроенном виде

class Login(auth_views.LoginView):
    
    def get_success_url(self):
        if self.request.user.is_superuser:
            return reverse('dashboard')
        else:
            return reverse('homepage')

Вы должны разрешить loginview перенаправлять в случае, если вы хотите использовать следующий параметр:

class Login(auth_views.LoginView):
    
    next_page = reverse('homepage')

    def get_success_url(self):
        if self.request.user.is_superuser:
            return reverse('dashboard')
        else:
            return super().get_success_url()

С помощью этого кода ваше представление попытается найти следующую страницу с помощью post или get параметров, отправленных в представление, и если оно ничего не найдет, представление использует атрибут next_page для перенаправления пользователя.

Вы можете увидеть поведение LoginView здесь: https://github.com/django/django/blob/main/django/contrib/auth/views.py

Вернуться на верх