0

ここで/query見つけたように 、追加の zend url ヘルパーで url アドレスを生成しています。構成ファイルでは、次のようにルーターをセットアップしました。

'my_name' => array(
                'type' => 'segment',
                'options' => array(
                    'route'    => '/my_name/:id/some_action[/:id2]',
                    'constraints' => array(
                        'id' => '[0-9]+',
                        'id2' => '[0-9]+',
                    ),
                    'defaults' => array(
                        'controller' => 'MyController',
                    ),
                ),
                'may_terminate' => true,
                'child_routes'  => array(
                    'query' => array(
                        'type' => 'Query',
                        'options' => array(
                            'defaults' => array(
                            )
                        )
                    ),
                ),
            ),

次のような生成されたリンクを受け取ります。

http://my_address/my_name/:id/some_action/?controller=MyController&limit=1&action=get&offset=2

私がやりたいのは、設定していないパラメーターを削除controlleraction、自分で提供したパラメーターのみを表示することです。

ルーター構成で設定するオプションはありますか? それとも、私が欲しいものを手に入れる他の方法がありますか?

4

1 に答える 1

0

ルートにもデフォルトにもアクションが指定されていません。ルートが一致したときに呼び出されるアクション (メソッド) を識別できる必要があります。

'route'    => '/my_name/:id/:action[/:id2]', // allow action passed thru
'constraints' => array(
     'id' => '[0-9]+',
     'id2' => '[0-9]+',
 ),
 'defaults' => array(
    'controller' => 'MyController',
    'action'     => 'some_action', // or specify a default action to use
 ),
于 2013-02-19T15:34:11.760 に答える