На данный момент этот код находится на грани возможности чтения / сопровождения.
Однако, если у вас будет еще несколько типов пользователей, я бы преобразовал их в словарь. Вам потребуется выполнить некоторый рефакторинг, чтобы переместить пользовательский тип из того, что он есть сейчас (логическое значение, я думаю, user.is_Type_A
), в какую-то постоянную строку (или Enum
, предпочтительно), как request.user.user_type
, * 1006. *
тогда:
redirection_dict = {
USER_TYPE_A: redirect("is_Type_A_views"),
USER_TYPE_B: redirect("is_Type_B_views"),
USER_TYPE_C: redirect("is_Type_C_views"),
}
def redirectory(request):
return redirection_dict.get(request.user.user_type, '404')