我遇到路由问题。我的路由路径应该如下/foo/{ID}/path
。我的第一个想法是创建新的路由。但我不确定这个解决方案。还有其他想法吗?
答案 0 :(得分:1)
假设foo
是控制器而path
是操作:
Route::set('route name here', 'foo/<id>/path')
->defaults(
array(
'controller' => 'foo',
'action' => 'path',
)
);
id
行动中path
可通过以下方式获取:
$id = $this->request->param('id');
-edit -
如果id
必须满足某些要求(长度恰好为8个字符,本例中只有a-z,A-Z和0-9),你也可以使用这样的东西:
Route::set('route name here', 'foo/<id>/path',
array(
'controller' => 'foo',
'action' => 'path',
'id' => '[a-zA-Z0-9]{8}',
)
)
->defaults(
array(
'controller' => 'foo',
'action' => 'path',
)
);
-edit 2 -
很抱歉,您刚刚注意到您要求为其创建路线的替代解决方案,而不是如何为其创建路线。
我会把它留在这里,因为它可能会帮助其他人。