dongqiang2024 2013-12-11 10:30
浏览 49
已采纳

zendframework 2中的路由无法正常工作

/* Here is my module config */



'controllers' => array(
    'invokables' => array(
    'User\Controller\User' => 'User\Controller\UserController',
    ),
),

'router' => array(
    'routes' => array(

          'user' => array(
            'type' => 'Literal',
            'options' => array(
                'route'    => '/user',
                'defaults' => array(
                    'controller' => 'User\Controller\User',
                    'action'     => 'index',
                ),
            ),
            'may_terminate' => true,
            'child_routes' => array(
                'default' => array(
                    'type'    => 'Segment',
                    'options' => array(
                        'route'    => '/[:controller[/:action]]',
                        'constraints' => array(
                            'controller' => '[a-zA-Z][a-zA-Z0-9_-]*',
                            'action'     => '[a-zA-Z][a-zA-Z0-9_-]*',
                        ),
                        'defaults' => array(

                        ),
                    ),
                ),
            ),
        ),
    ),
),

And Controller as

class UserController extends AbstractActionController{

public function indexAction(){
    parent::indexAction();
    return new ViewModel();
}

public function addAction(){
    return new ViewModel();
}

}

whenever I try to access zf.localhost/user/user/add

It throws error as

Page not found.

The requested controller could not be mapped to an existing controller class.

Controller: user(resolves to invalid controller class or alias: user)

No Exception available

I can't figure out why the routing is not working.

  • 写回答

1条回答 默认 最新

  • dongyuan1970 2013-12-11 10:59
    关注

    You are trying to access controller named user which doesn't exists. You have two options:

    1. Change 'route' => '/[:controller][/:action]' to 'route' => '/:action'. And it will search for an action in your User\Controller\UserAction
    2. Add to controllers new alias 'aliases' => array('user' => 'User\Controller\User')
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 隐藏系统界面pdf的打印、下载按钮
  • ¥15 MATLAB联合adams仿真卡死如何解决(代码模型无问题)
  • ¥15 基于pso参数优化的LightGBM分类模型
  • ¥15 安装Paddleocr时报错无法解决
  • ¥15 python中transformers可以正常下载,但是没有办法使用pipeline
  • ¥50 分布式追踪trace异常问题
  • ¥15 人在外地出差,速帮一点点
  • ¥15 如何使用canvas在图片上进行如下的标注,以下代码不起作用,如何修改
  • ¥50 vue router 动态路由问题
  • ¥15 关于#.net#的问题:End Function