Как обычно делаю: В области неавторизованного проверяю, является ли авторизованным, если да, то редирект в область авторизованного, в области авторизованного проверяю, если авторизован и не прошёл обучение, то редирект в область обучения. Получается я делаю 2 редиректа, то есть проверку на прохождение обучения отдаю в область авторизованного. Как хочу сделать: В области неавторизованного проверяю, является ли авторизованным, если да, то проверяю, прошёл ли обучение, если не прошёл обучение, то редирект в область обучения, если прошёл, то редирект в область авторизованного. Получается делаю 1 редирект. Логично? Или можно оставить первый варик? Редиректы эти сильно напрягают, если их 2?
С одной стороны да, а с другой нет. Почему нет? Есть предметная область (разделы): не авторизованный, авторизованный и обучение. Получается, что каждая область должна четко выполнять свою работу и только ее и не знать ничего через область. Выходит, что процесс выглядит так: Область не авторизованного выполняет проверку на авторизацию и делегирует дальнейшие действия ей (редирект). Область авторизованного доступна только после области не авторизованного и проверяет уже бизнес логику - наличия пройденного обучения. Если обучение не прошел, то делегирует дальнейшие действия области обучения. Да, тут много редиректов получается, то если у вас подход редиректов, то я бы делал таким путем. Лучше было бы внедрить контроллеры, которые не работают через редирект и выполняют функцию рендера контента, где уже можно вам второй вариант подключить.
я наоборот из рендера хочу переписать на редиректы, потому что ерунда получается: либо мне нужно при попытке неавторизованного зайти в область авторизованного - лупить ему 403, либо рендерить ему домашнюю страницу, а при этом в адресной строке будет ерунда, например неавторизованный набирает /profile а я ему домашнюю рендерю, я хочу плавно и правильно приземлять туда, какими правами обладает кстати всё верно: мне нужно оставить проверку на обучение в области авторизованного ИНАЧЕ я если ШАГНУ из обучения в область авторизованного, то без такой проверки я попаду в область авторизованного без прохождения обучения всё я врубился, нужно оставлять 2 редиректа, ведь это только при авторизации будет и только при незавершённом обучении, спс, что зашёл, я расклад твой пока читал, то лучше сориентировался либо можно и там и там такие проверки сделать, но в области авторизованного обязательно ок, порешали