Мне просто интересно и интересно узнать, как достичь конфигурации динамических маршрутов в cakephp, или как таковой, что я могу создать два таких маршрута:
Router::connect('/', array('controller' => 'users', 'action' => 'login')); Router::connect('/', array('controller' => 'users', 'action' => 'dashboard'));
без прерывания ошибки каждый раз, когда пользователь переходит на мой сайт. То, что я хочу сделать, – установить «/» в качестве целевой страницы по умолчанию, когда пользователь не вошел в систему, но иначе, если пользователь вошел в систему и сеанс аутентификации присутствует, я хотел бы установить URL-адрес '/' но указывая на панель пользователя.
Я думал, что импорт сеанса в route.php будет работать, но это было не так, как я ожидал:
App::import('Session', 'Component'); $this->Session = new SessionComponent; if($this->Session->check('Auth.User')) { Router::connect('/', array('controller' => 'users', 'action' => 'dashboard')); } else { Router::connect('/', array('controller' => 'users', 'action' => 'login')); }
Любая помощь очень ценится, я уверен, что многие из нас тоже ждут ответа. Заранее большое спасибо. И желаю уа Счастливые праздники.
Я бы просто переключил это на уровне контроллера. Направьте свой /
маршрут на UsersController::home
, там выполните:
function home() { if ($this->Auth->user()) { $this->dashboard(); } else { $this->login(); } } function dashboard() { $this->render('dashboard'); } function login() { $this->render('login'); }