结块路线和网址重写

时间:2012-01-06 07:37:34

标签: url cakephp url-rewriting routes cakephp-1.2

我的路线声明如下:

    Router::connect('/profile/', array('controller' => 'accounts', 'action' => 'profile')); 
    Router::connect('/accounts/:action/*', array('controller' => 'accounts'));
    Router::connect('/:username', array('controller' => 'accounts', 'action' => 'profile'), array('pass' => array('username')));

我的所有链接都是使用Cake的$ html-> url api调用。当网址只是[域名] /帐户/个人资料时,路由可以正常工作,并且可以正确地重写为[域名] /个人资料。

但是当我使用$ html-> url(array('controller'=>'accounts','action'=>'profile',$ username),true)建立链接时,url写入是[domain] / accounts / profile /:username而不仅仅是[domain] /:username。

如何制作[域名] /:用户名?

1 个答案:

答案 0 :(得分:1)

尝试这样

Router::connect('/:username', array('controller' => 'accounts', 'action' => 'profile'), array('pass' => array('username')));
Router::connect('/profile/', array('controller' => 'accounts', 'action' => 'profile')); 
Router::connect('/accounts/:action/*', array('controller' => 'accounts'));