0

我的应用程序中的路由有问题。

$this->redirect('someone', array('controller' => 'account', 'action' => 'settings'));

它总是重定向到 app.dev/someone 与数组中的内容无关。

我发现问题出在TreeRouteStack.php的方法assemble

TreeRouteStack.php:347

$path = $this->baseUrl . $route->assemble(array_merge($this->defaultParams, $params), $options);

我在此行之前尝试了“死”来测试 $params - 一切正常。所以die(implode(',',$params));在上面的代码返回之前

帐号设定

但是在这echo $path 回来之后

/某人

代替

/某人/帐户/设置

哪里可能有问题?我正在使用 ZF2 2.2.2

4

1 回答 1

1

利用

$this->redirect()->toRoute(
    'someone',
     array('controller' => 'account', 'action' => 'settings')
); 

代替

$this->redirect(
    'someone',
    array('controller' => 'account', 'action' => 'settings')
);

请查看zf2 文档中的Redirect Plugin

于 2013-09-10T13:53:22.247 回答