Использовать следующий из 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