2012-08-13 11 views
7

My Zend Framework 2アプリケーションには、デフォルトのZend Framework 1ルートを模倣しようとしているルート定義があります。Zend Framework 2パートルートアセンブリ

 '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ビューヘルパーを使用して、任意のパラメータを持つルートを組み立てることができません:それは次のようになります。例えば

/test/test代わりに/test/test/id/5

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

結果。

誰もこのような部分経路を組み立てる方法を知っていますか?または、ZF1形式のルートを取得するより良い方法はありますか?

答えて

10

Urlビューヘルパーでルート名(子ルートを含む)全体を指定する必要があることが判明しました。 /test/test/id/5のURLにつながる

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

:私の質問に定義されたルータを使用して

、適切なビューヘルパーのコールは次のようになります。

関連する問題