我想连接以下路线:
寄存器/ about_you
my_profile /编辑/ about_you
......采取同样的行动。但我希望第二条路线引入一个参数,我可以用它来识别我们在编辑页面上,而不是注册。
我目前在我的routes.php:
Router::connect('/register/:action/*',
array(
'controller' => 'registration'
)
);
Router::connect('/my_profile/edit/:action/*',
array(
'controller' => 'registration',
'edit' => 1
)
);
这可以将上面的URL连接到正确的位置 - 我可以在控制器中使用$this->params['edit']
。但是,当我尝试使用
Router::url(array('controller' => 'registration', 'action' => 'about_you', 'edit' => 1, $i));
我得到了
/注册/ about_you / 0 /编辑:1
而不是
/ my_profile /编辑/ about_you
我做错了什么?
答案 0 :(得分:2)
您是否尝试过像这样交换?
Router::connect('/my_profile/edit/:action/*',
array(
'controller' => 'registration',
'edit' => 1
)
);
Router::connect('/register/:action/*',
array(
'controller' => 'registration'
)
);
如果是这样的话,你会得到/ my_profile / edit / about_you / 0