【问题标题】:Zend Framework 2 Part Route AssemblyZend Framework 2 部分路由组装
【发布时间】:2012-08-13 00:10:19
【问题描述】:

我的 Zend Framework 2 应用程序有一个路由定义,它试图模仿 Zend Framework 1 的默认路由。它看起来像:

        'router' => array(
            'routes' => array(
                'default' => array(
                    'type'    => 'segment',
                    'options' => array(
                        'route'    => '/[:controller[/:action]]',
                        'defaults' => array(
                            '__NAMESPACE__' => 'Application\Controller',
                            'controller'    => 'Index',
                            'action'        => 'index',
                        ),
                    ),
                    'may_terminate' => true,
                    'child_routes'  => array(
                        'wildcard' => array(
                            'type' => 'wildcard',
                        ),
                    ),
                ),
            ),
        ),

它可以很好地匹配路由,但我无法使用 Url 视图助手来组装带有任意参数的路由。

例如,

$this->url('default', array('controller' => 'test', 'action' => 'test', 'id' => 5));

导致/test/test 而不是/test/test/id/5

有人知道如何组装这样的部分路线吗?或者有没有更好的方法来获得 ZF1 风格的路线?

【问题讨论】:

    标签: php zend-framework2


    【解决方案1】:

    原来你需要在Url视图助手中指定整个路由名称(包括子路由)。

    使用我的问题中定义的路由器,正确的视图助手调用如下所示:

    $this->url('default/wildcard', array('controller' => 'test', 'action' => 'test', 'id' => 5));
    

    这将导致/test/test/id/5 的网址。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-06-09
      • 2014-05-02
      • 2015-04-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多