1

我正在 kohana 3.2 上开发我的电子商务。我需要设置路由才能使用这样的链接:

第一的:

example.com/categoryname/ - 这显示给定类别的所有产品。最好有分页,比如example.com/categoryname/1,example.com/categoryname/2等...

第二:

example.com/categoryname/productname - 这显示了选择的产品。

categoryname 和 productname 当然是字母数字。类别列表是动态的,所以我不能制作与类别一样多的控制器。我想省略 index.php 中的 hack 和主要的引导程序更改,以便能够轻松地将代码迁移到 ko3.3 和更高版本(如果有的话)。

我正在阅读有关 lambda 回调函数的信息,也许这就是解决方案。

无论如何,如果这是不可能的,也许路由:example.com/shop/categoryname/productname, example.com/shop/categoryname/1 是可能的。

谢谢你的帮助。开发者1

4

1 回答 1

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"
    )
);

这只是一个例子。例如,您可以将两者路由到同一个控制器但不同的操作。这仅取决于您想要它的方式。

但是这种设置并不容易在根级别添加额外的路由。

希望这可以帮助。

于 2012-06-25T09:23:44.773 回答