再次说下,我用的是ko3.1.0与ko3有差别的.
其实呢,kohana3的路由设置,很简单.打开application文件下的bootstrap.php,找到Route::set,会看如下的默认路由:
Route::set('default', '((/(/)))') ->defaults(array( 'controller' => 'welcome', 'action' => 'index', ));
这个呢,就是默认的路由了,可以看出它的组成是这样子的.名称,控制器,动作,参数.特别要指出的是,每个路由必须指定默认的控制和动作,一般是index.
如何创建自定义的路由呢,其实和默认的写法是一样只不过,加入自己要加的东西.例如有一个产品列表页,需要获取产品类型的ID和当前页码.
路由可以这样设置
Route::set('product', 'product/((/)(/))') ->defaults(array( 'controller' => 'product', 'action' => 'index', 'id' =>0, 'page' =>0//有的例子这里是NULL,但是我用了报错. ));
这里呢,第一个product是名称,后面的是重点讲的地方,product是控制器,/action是动作,一定要这么写.后面(/<>)里面是参数.在页面中获取这里参数是这样,$id = $this->request->param('id'),这个里面的id,与路由里面的id名称必须相同.
需要的同学可参照这个例子去改,应该可以了.未了,强烈推荐大家看2个站的东西
1.http://kohanaframework.org/3.1/guide(官方的在线文档)
2.http://kerkness.ca/wiki/doku.php(非官方的维基,例子比官方的好,但是版本3.0的)
可以对比着看,相信大家一定可以玩转kohana,加油!!