1

我有以下 Phalcon 路线:

$router->add('/:controller/:action/:params', [
    'module' => 'secured',
    'controller' => 1,
    'action' => 2,
    'params' => 3,
    'namespace' => 'My\Namespace\Controllers'
])->setName('main');

我正在尝试为该路由组装 URL,它应该如下所示:

/用户/注册/管理员/约翰

其中,“user”是控制器名称,“register”是操作,有两个参数:[0] = 'admin',[1] = 'john'。

我按如下方式组装它:

$url = $this->di['url']->get([
    'for' => 'main',
    'controller' => 'user',
    'action' => 'regiser',
    'params' => [
        'admin',
        'john'
     ]
]);

但是,参数不在 $url 中:

/用户/注册

如何使 :params 进入最终 URL?

谢谢!

4

2 回答 2

1

我找到了唯一的方法来做到这一点。自己做:

$this->url->get(array(
        'for' => 'main',
        'controller' => 'user',
        'action' => 'register',
        'params' => implode("/", array('admin', 'john'))
));
于 2014-10-11T16:50:39.540 回答
1

我现在无法检查,但可以:

array(
    'for' => 'main',
    'controller' => 'user',
    'action' => 'regiser',
    'admin'
    'john'
);

如你所愿工作?

于 2013-10-11T11:22:36.510 回答