1


1つのコントローラーで異なるアクションに直面している場合、同じコントローラーに複数のルーターを設定する方法は?
管理モジュールのコントローラー サービスには 2 つのアクションがあります。
最初のアクションはmanageで、2番目はmanageArticleですこれ
が私のコードです

protected function _initRoutes(){
    $this->bootstrap('FrontController');
    $router = $this->getResource('FrontController')->getRouter();

    $route = new Zend_Controller_Router_Route(
                        'admin/services/:actionType',
                        array('module' => 'admin',
                            'controller' => 'services',
                            'action' => 'manage'),
                        array('actionType' => '(add|edit)')
                    );

    $router->addRoute('services', $route);     

    $routeServiceArticle = new Zend_Controller_Router_Route(
                        'admin/services/article/:actionType',
                        array('module' => 'admin',
                            'controller' => 'services',
                            'action' => 'manageArticle'),
                        array('actionType' => '(addArticle|editArticle)')
                    );

    $router->addRoute('services', $routeServiceArticle);      
}

助けてくださいよろしくお願い
します!!!

4

1 に答える 1

1

ルートに別の名前を付ける必要があります。たとえば、次のようになります。

$router->addRoute('services', $route);

[...]

$router->addRoute('servicesArticle', $routeServiceArticle); 

その後、動作するはずです。

于 2013-01-02T09:09:48.757 に答える