Django Условное перенаправление на вход при проверке userType
Я хочу перенаправить пользователя на страницу его профиля при входе в систему. У меня есть два типа пользователей, typeA и typeB. У меня есть флаги модели is_typeA и is_typeB для определения типа пользователя. Каждый тип имеет свой собственный шаблон профиля mysite/accounts/typeA/ и mysite/accounts/typeB/<username.
Я пытаюсь вызвать новое представление при входе в систему, называемое login_success, вот код:
def login_success(request):
"""
Redirects users based on their user_type
"""
if request.user.is_typeA:
return redirect("typeA")
elif request.user.is_typeB:
return redirect("typeB")
else:
return redirect("home")
Мой urls.py имеет следующий вид:
urlpatterns = [
path('login/', LoginView.as_view(), name='login'),
path('typeA/<username>/', typeA, name='typeA'),
path('typeB/<username>/', typeB, name='typeB'),
path('login_success/', login_success, name='login_success')]
Мои настройки:
LOGIN_REDIRECT_URL = 'login_success'
Ошибка, которую я получаю
Exception Type: NoReverseMatch at /accounts/login_success/ Exception Value: Reverse for 'userTypeB' with no arguments not found. 1 pattern(s) tried: ['accounts/userTypeB/(P<username>[^/]+)/$']