0
Kohana 3路由機制忽略查詢字符串參數似乎是普遍的共識(例如參見this thread)。但是,這不是我在應用程序中看到的行爲。Kohana 3路由和查詢字符串
的路由被定義,像這樣:
Route::set('an_action', 'admin/an_action(/<id>)')
->defaults(array(
'directory' => 'admin',
'controller' => 'welcome',
'action' => 'an_action',
));
動作本身需要從查詢字符串「URL」參數,如果沒有給出錯誤的結果,表明路由是成功的,並且行動企圖執行:
http://myapp.localhost/admin/an_action/3
ERROR: ErrorException [ 8 ]: Undefined index: url ~ APPPATH/classes/controller/admin/welcome.php [ 37 ]
,但如果我添加URL查詢參數,路由完全失敗:
http://myapp.localhost/admin/an_action/3?url=myapp.localhost/admin
Kohana_Request_Exception [ 0 ]: Unable to find a route to match the URI: admin/an_action/3?url=myapp.localhost/admin
爲了讓它更令人沮喪,這個相同的路由設置在另一個我正在開發的本地主機上的應用程序中工作得很好。想法?我的路線設置不正確?這可能是Kohana安裝的問題嗎?在此先感謝您的幫助!
使用'$ PARAMS =路線::得到( 'an_action') - >匹配($ URI)'來檢查您的路線。嘗試檢查這些網址:'admin/an_action /','admin/an_action/3','admin/an_action /','admin/an_action /?uri = test','admin/an_action/3?uri = test' – biakaveron 2011-02-26 07:26:25