簡體   English   中英

Kohana 3.3中的路由調試

[英]Route debug in Kohana 3.3

我找到了調試路由的代碼。

$route = Route::get('default');
echo Kohana_Debug::dump($route->matches('en/start/index'));

當我在引導程序中使用代碼時,返回錯誤:

ErrorException [可恢復的錯誤]:傳遞給Kohana_Route :: matches()的參數1必須是Request的實例,給定的字符串,

如何在Kohana 3.3中調試路由?

根據您的評論,我認為您的路線有誤。 應該看起來像這樣:

Route::set('default', '(<lang>(/<controller>(/<action>(/<id>))))

請注意<lang>周圍的括號。

要測試URL是否與路由匹配,您不能將字符串傳遞給$my_route->match()方法。 盡管它確實說您可以在docs中使用 ,但該方法僅接受Request對象。 這將使您的代碼看起來更像:

$route = Route::get('default');
$request = Request::factory('en/start/index');

echo Debug::dump($route->matches($request));

上面應該在失敗時輸出FALSE ,或者在成功時輸出所有路由參數的array

如果您需要更強大的工具,則可能要看一下bluehawk的devtools模塊,盡管它的開發似乎已在Kohana 3.1.x上停止了,並且在新版本中不太可能正常工作,但是我個人還沒有使用過它。

編輯

我已經盡力並更新了Devtools模塊 隨時從我的存儲庫中獲取它,您將能夠測試您的路線。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM