Routing zf2中的路由方法

Routing zf2中的路由方法,routing,zend-framework2,Routing,Zend Framework2,我正在学习zf2中的方法路由。我做这种类型的路由,但不知道如何在前面使用它?它给我的错误是,在路由数组中没有指定“type” 'home' => array( 'type' => 'Zend\Mvc\Router\Http\Literal', 'options' => array( 'route' => '/', 'defaults' => arr

我正在学习zf2中的方法路由。我做这种类型的路由,但不知道如何在前面使用它?它给我的错误是,在路由数组中没有指定“type”

 'home' => array(
            'type' => 'Zend\Mvc\Router\Http\Literal',
            'options' => array(
                'route'    => '/',
                'defaults' => array(
                    'controller' => 'Application\Controller\Index',
                    'action'     => 'index',
                ),
            ),
            'may_terminate' => true,
            'child_routes' => array(
                'lgn' => array(
                    'type' => 'Zend\Mvc\Router\Http\Method',
                    'options' => array(
                        'verb' => 'post',
                    )
                ),
                'child_routes' => array(
                    'form' => array(
                        'may_terminate' => true,
                        'type' => 'Zend\Mvc\Router\Http\Literal',
                        'options' => array(
                            'route' => '/another',
                            'defaults' => array(
                                'controller' => 'Application\Controller\Index',
                                'action'     => 'another',
                            )
                        )
                    )
                )
            ),
        ),

看起来你没有液化天然气控制器


根据文档,它应该是这样的

Notuser的回答很好:)

我用我自己的代码来完成它,不同的是你可以保留相同的url,但是如果它是post或get,你可以使用不同的路径

在我的url示例中:“/user rest”,如果是get方法,则zf2转到indexAction,如果是post方法,则zf2转到createAction

'routes' => array(
    'user-rest' => array(
            'type' => 'Literal',
            'options' => array(
                'route' => '/user-rest',
            ),
            'child_routes' => array(
                'get' => array(
                    'type' => 'method',
                    'options' => array(
                        'verb' => 'get',
                        'defaults' => array(
                            'controller' => 'RestCtrl',
                            'action' => 'index',
                        ),
                    ),
                ),
                'post' => array(
                    'type' => 'method',
                    'options' => array(
                        'verb' => 'post',
                        'defaults' => array(
                            'controller' => 'RestCtrl',
                            'action' => 'create',
                        ),
                    ),
                ),
            ),
        ),

我不认为Zend\Mvc\Router\Http\Method有你认为的功能。那么你能解释一下它是如何工作的吗?好的。。。因此,根据您的回答,“发布路线”将是“/应用程序/操作123”的主路线对吗<代码>'home'=>array('type'=>'Zend\Mvc\Router\Http\Literal','options'=>array('route'=>'/application/action123','defaults'=>array('controller'=>'application\controller\Index','action'=>'Index',),),不,您的主路线看起来不错lng url将看起来像/post routeIt给我错误:
致命错误:未捕获异常“Zend\Mvc\Router\exception\InvalidArgumentException”,消息“缺失”类型第269行的Zend/Mvc/Router/SimpleRouteStack.php中的“选项”
尝试使用just Literal而不是Zend\Mvc\Router\Http\Literal,或者“may\u terminate”=>true、“child\u routes”=>数组存在问题(
'routes' => array(
    'user-rest' => array(
            'type' => 'Literal',
            'options' => array(
                'route' => '/user-rest',
            ),
            'child_routes' => array(
                'get' => array(
                    'type' => 'method',
                    'options' => array(
                        'verb' => 'get',
                        'defaults' => array(
                            'controller' => 'RestCtrl',
                            'action' => 'index',
                        ),
                    ),
                ),
                'post' => array(
                    'type' => 'method',
                    'options' => array(
                        'verb' => 'post',
                        'defaults' => array(
                            'controller' => 'RestCtrl',
                            'action' => 'create',
                        ),
                    ),
                ),
            ),
        ),