我很难找到如何从Phalcon PhP控制器内的命名路由获取Url。这是我的路线:
$router->add(
'/admin/application/{formUrl:[A-Za-z0-9'-]+}/{id:[A-Za-z0-9'-]+}/detail',
[
'controller' => 'AdminApplication',
'action' => 'detail'
]
)->setName("application-details");
我只想得到Url,例如:domain.com/admin/application/form-test/10/detail。使用下面的代码,我可以获得html来创建链接,与link_to的结果相同。
$url = $this->tag->linkTo(
array(
array(
'for' => 'application-details',
'formUrl' => $form->url,
'id' => $id
),
'Show'
)
);
我想要的结果只是Url。我在控制器动作中。我知道这一定很简单,我就是找不到一个例子。你能帮我吗?
谢谢你的帮助!
您应该使用URL帮助程序。示例:
$url = $this->url->get(
[
'for' => 'application-details',
'formUrl' => $form->url,
'id' => $id,
],
[
'q' => 'test1',
'qq' => 'test2',
]
);
如果需要,可以为查询字符串参数传递第二个数组。
根据你的路线定义,上面应该输出类似于:
/admin/application/form-url/25/detail?q=test1&qq=test2
文档中有关生成URI的更多信息。