用路由重命名zend模块

时间:2012-05-19 00:10:30

标签: zend-framework routes

我有一条路线将'items'模块重命名为'products',它在大多数情况下都有效,但在url中没有明确设置控制器或动作时则不行。例如,example.com/products不起作用,而example.com/items起作用,并且与example.com/products/index/index相同。任何想法如何解决它,或使控制器和操作可选?

$router->addRoute('item-alias', new Zend_Controller_Router_Route('products/:controller/:action', array(
    'module'=>'items'
)));

修改

当我将其更改为

时似乎有效
$router->addRoute('item-alias', new Zend_Controller_Router_Route('products/:controller/:action/*', array(
    'module'=>'items'
    'controller'=>'index',
    'action'=>'index'
)));

'*'允许附加其他可选参数,例如example.com/products/index/index/page/2

1 个答案:

答案 0 :(得分:1)

设置控制器和操作的默认值。这样它们就是可选参数,可以跳过。