Phalcon路由,如何设置默认参数


Phalcon routing, how to set default parameters?

我试图在Phalcon 1.3.4中创建动态路由,但如果缺少参数(如:action:params),则路由不匹配。

这是(工作)代码:

$router = new Phalcon'Mvc'Router(TRUE);
$group = new Phalcon'Mvc'Router'Group([
                                           'namespace' => 'App''Backoffice',
                                           'controller' => 'Index',
                                       ]);
// All the routes start with /group
$group->setPrefix('/backoffice');
// Adding route to group
$group->add('', ['action' => 'index']); // matches /backoffice
$group->add('/:controller', ['controller' => 1]); // matches /backoffice/moderate
$group->add('/:controller/:action', ['controller' => 1, 'action' => 2]);
$group->add('/:controller/:action/:params', ['controller' => 1, 'action' => 2, 'params' => 3]);
$router->mount($group);

有没有可能去掉多余的前三条路线,只保留第四条?通过指定默认值以匹配/backoffice/backoffice/moderate

这就是我初始化路由器的方式:

$router = new 'Phalcon'Mvc'Router(false);
$router->removeExtraSlashes(true);
$router->notFound([
    "module" => "page",
    "controller" => 'index',
    "action"     => 'index',
]);

文档中还有一个setDefault()方法:http://docs.phalconphp.com/en/latest/api/Phalcon_Mvc_Router.html

这有帮助吗?