Zend重定向不起作用

时间:2014-01-30 05:40:44

标签: php zend-framework

我在module.config.php中有以下配置

'router'=>array(
        'routes'=>array(
                'test'=>array(
                        'type'=>'Zend\Mvc\Router\Http\Literal',
                        'options'=>array(
                                'route'=>'/test',
                                'defaults'=>array(
                                        'controller'=>'Test\Controller\Index',
                                        'action'=>'index'
                                )
                        ),
                        'may_terminate' => true,
                        'child_routes' => array(
                                'edit' => array(
                                        'type' => 'segment',
                                        'options' => array(
                                                'route' =>'/edit[/:id]',
                                                'constraints' =>array('id' => '[\d\w\-_]*'),
                                                'defaults' => array(
                                                        'controller' =>'Test\Controller\Index',
                                                        'action' => 'edit',
                                                ),
                                        ),
                                ),
                                'add' => array(
                                        'type' => 'segment',
                                        'options' => array(
                                                'route' =>'/add',
                                                'defaults' => array(
                                                        'controller' =>'Test\Controller\Index',
                                                        'action' => 'add',
                                                ),
                                        ),
                                ),
                        ),
                )
        )
)

现在我正在使用以下重定向

返回$ this-> redirect() - > toRoute('test');

它不起作用。我没有弄到这个

的错误

2 个答案:

答案 0 :(得分:0)

您的配置文件在这里没什么用处,您应该已经发布了控制器的代码,

而不是return $this->redirect()->toRoute('test');

使用以下格式

return $this->redirect()->toRoute('ModuleName',
  array('controller'=>controllerName,
        'action' => actionName,
        'params' =>params));

ModuleNamemodule的名称, ControllerNamecontroller的名称, Action名称是action的名称,

注意: - params是可选的。

答案 1 :(得分:0)

如果模块名称为test,则尝试使用:

return $this->redirect()->toUrl('/test');