在 Kohana 中路由而不显示控制器名称
Routing in Kohana without showing controller name
我想在 Kohana Framework 版本 3.3.1 中创建路由。
我想要 URL 像 http://www.test.com/male/London 并且在内部他们会像下面那样 URL-
http://www.test.com/list/search/London
我想在 URL 中隐藏控制器和动作名称。
非常感谢任何帮助。
这可以通过使用 bootstrap.php and/or 模块的 init.php 文件中的路由来实现。
例如,您可以为 (male/<location>)
设置路线,然后您的默认控制器将是 list
和操作 search
.
然后您可以使用 $this->request->param('location');
访问 controller/action 中的位置,以用于您需要的任何数据库查询。
迷茫?通读 Kohana Docs 的这一部分,应该都明白了。
您必须对文件进行两项更改:
引导文件:
Route::set('list', 'male/<id>' )
->defaults(array(
'controller' => 'list',
'action' => 'search',
));`
其次,您可以让 link 像
href="<?php echo URL::site('male/'.id, TRUE) ?>">
并且这个路由文件应该在你的默认路由文件之上。
我想在 Kohana Framework 版本 3.3.1 中创建路由。
我想要 URL 像 http://www.test.com/male/London 并且在内部他们会像下面那样 URL-
http://www.test.com/list/search/London
我想在 URL 中隐藏控制器和动作名称。
非常感谢任何帮助。
这可以通过使用 bootstrap.php and/or 模块的 init.php 文件中的路由来实现。
例如,您可以为 (male/<location>)
设置路线,然后您的默认控制器将是 list
和操作 search
.
然后您可以使用 $this->request->param('location');
访问 controller/action 中的位置,以用于您需要的任何数据库查询。
迷茫?通读 Kohana Docs 的这一部分,应该都明白了。
您必须对文件进行两项更改:
引导文件:
Route::set('list', 'male/<id>' ) ->defaults(array( 'controller' => 'list', 'action' => 'search', ));`
其次,您可以让 link 像
href="<?php echo URL::site('male/'.id, TRUE) ?>">
并且这个路由文件应该在你的默认路由文件之上。