在 Kohana 3.2 中,我使用默认路由进行简单的控制器/动作/id 设置:
Route::set('default', '(<controller>(/<action>(/<id>)))')
->defaults(array(
'controller' => 'home',
'action' => 'index',
'id' => '0',
));
根据文档,将控制器和操作连接到这样的简单路由非常容易,但是控制器中永远无法访问路由参数(在本例中为 id)。
例如,我有一条路线:
/用户/信息/123
处理该路由的控制器被成功调用:
public function action_info()
{
$id = $this->request->param('id');
echo "id=" . $id; //nothing
echo "is_null=" . is_null($this->request->param('id')); //1
}
但是 $this->request->param('id') 总是设置为 null。
这似乎是我能想到的最简单的例子,我在这里做错了什么?