由於kohana框架在國內的用戶較少,而且新版與kohana2.X差別太大,加之kohana3資料多為英文.讓很多對kohana感興趣,想學的同學們只能望K興歎.由於公司 最近轉向kohana3開發(kohana3.1.0穩定版),所以我趁次機會,認真看了下官方的資料.獲益良多,借個人小站,分享給大家.今天呢,就說下kohana的路由設置.
再次說下,我用的是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,加油!!