如何在CakePHP中正确执行此路由?
我正在尝试创建一条路线,但在使其正常运行时遇到了一些困难 我有这个动作如何在CakePHP中正确执行此路由?,php,cakephp,routing,Php,Cakephp,Routing,我正在尝试创建一条路线,但在使其正常运行时遇到了一些困难 我有这个动作 // MembershipsController public function professional_info($type = null, $member_id = null) { // Work done here. } 通过url/memberships/professional info/mytype/{user id here} 但是,我想将此url更改为: /mytype-professional-in
// MembershipsController
public function professional_info($type = null, $member_id = null) {
// Work done here.
}
通过url/memberships/professional info/mytype/{user id here}
但是,我想将此url更改为:
/mytype-professional-info/{user-id-here}
因此,我尝试创建一个路由,该路由自动将mytype
作为第一个参数传递给professional\u info
,然后从url接受数字用户id,并将其作为第二个参数传递
我尝试过以下类似的东西:
Router::connect('/mytype-professional-info/:id',
array('controller' => 'memberships', 'action'=> 'professiona_info', 'mytype'),
array(
"pass" => array('id'),
"id" => '[0-9]+',
)
);
- 我不确定如何正确设置这条路线。有人能告诉我如何创建一个路由,为一些参数传递静态值,为其他参数传递url中的动态值吗
非常感谢。您定义路由的方式将传递类型,但作为第二个参数 如果出于任何原因这是不可接受的,那么您必须显式地传递参数,但是这只能使用命名元素:
Router::connect(
'/mytype-professional-info/:id',
array(
'controller' => 'memberships',
'action'=> 'professional_info',
'type' => 'mytype'
),
array(
'pass' => array('type', 'id'),
'id' => '[0-9]+',
)
);