CakePHP路由不适用于切换语言?

时间:2014-10-01 05:03:35

标签: php cakephp cakephp-2.5

我有:

Router::connect('/:language/:controller/:action/*', array(), array('language' => 'en|zh'));
Router::connect('/:language/:controller', array('action' => 'index'), array('language' => 'en|zh'));
Router::connect('/:language', array('controller' => 'welcome', 'action' => 'index'), array('language' => 'en|zh'));

我想再添加一条路线,如下所示:

Router::connect('/profile', array('controller' => 'userProfile', 'action' => 'index'));

当我访问:www.xxxxx.com/profile时,它正常工作,但是当我访问www.xxxxx.com/en/profile时,我收到一个错误,即控制器丢失。 如何在没有任何错误的情况下访问www.xxxxx.com/en/profile?

请帮忙!感谢您提前获取任何帮助!

2 个答案:

答案 0 :(得分:1)

您只需要两次声明该路线。

Router::connect('/profile', array('controller' => 'userProfile', 'action' => 'index'));
Router::connect('/:language/profile', array('controller' => 'userProfile', 'action' => 'index'), array('language' => 'en|zh'));

使用这种方式,让我知道你对此有何想法。

由于

答案 1 :(得分:0)

您可以使用

Router::connect('/:language/profile', array('controller' => 'userProfile', 'action' => 'index'), array('language' => 'en|zh'));
相关问题