Подскажите пожалуйста новичку, при разборе концепции mvc возник вопрос. В зависимости от статуса пользователя (авторизован/неавторизован), как реализуется доступ к контроллерам?
зависит от логики самого сайта. к некоторым контроллерам у неавторизованных вообще не должно быть доступа. тогда ошибка, или редирект, или пустая страница. как угодно
Это я понимаю), я интересуюсь где методологически правильнее реализовывать проверку. 1. При входе в контроллер, если false тогда redirect. (и такое условие в каждом контроллере) 2. Или в Route(), проверяем соответствие вводимого контроллера на доступ, после чего создаем контроллер.
ну вот об этом и нужно было спрашивать в первом сообщении. а вообще, идеологически проверка лучше пусть будет в одном месте. иначе гдето можно забыть её сделать.
Тогда вытекает следующий вопрос: Где правильнее хранить соответствия имяКонтроллера - доступ (авторизован/неавторизован)
Для примера, ларка. Есть файл где прописываются роуты, их можно сгруппировать и на группы навешивать фильтры, типа так: Код (PHP): Route::group(array('before' => 'auth'), function () { Route::get('/', function () { // К этому маршруту привязан фильтр auth. }); Route::get('user/profile', function () { // К этому маршруту также привязан фильтр auth. }); }); Довольно удобно, вся логика доступа прописана в одном месте, достаточно вынести контроллер из группы, либо добавить в неё.