我的路线声明如下:
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。
如何制作[域名] /:用户名?
答案 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'));