我正在kohana 3.2上开展电子商务工作。我需要设置路由以便能够使用这样的链接:
第一
example.com/categoryname/ - 显示给定类别的所有产品。在那里有像example.com/categoryname/1,example.com/categoryname/2等那样的分页会很高兴...
第二
example.com/categoryname/productname - 显示所选产品。
categoryname和productname当然是字母数字。类别列表是动态的,所以我不能制作与类别一样多的控制器。我想省略index.php中的hacks和主要的bootstrap更改,以便能够轻松地将代码迁移到ko3.3和upper(如果有的话)。
我正在阅读有关lambda回调函数的内容,也许这就是解决方案。
无论如何,如果无法做到这一点,可能会路由:example.com/shop/categoryname/productname,example.com/shop/categoryname/1。
感谢您的帮助。 DEV1
答案 0 :(得分:0)
这取决于其他路线。如果这是唯一的两条路线,那么很容易做到:
Route::set('categories', "<category_name>(/<page>)", array('page' => "\d+")
->defaults(array(
'controller' => "category",
'page' => 0
);
Route::set('product', "<category_name>/<product_name>")
->defaults(
array(
'controller' => "product"
)
);
这只是一个例子。例如,您可以将两者路由到同一个控制器但行为不同。这取决于你的需要。
但是这种设置不容易在根级别添加其他路由。
希望这有帮助。