Zend framework Zend Framework在同一地点的路由中更改参数?

Zend framework Zend Framework在同一地点的路由中更改参数?,zend-framework,parameters,routes,Zend Framework,Parameters,Routes,我不确定如何解决这个问题,或者wat是解决这个问题的最佳方法。也找不到足够的信息让我走上正确的道路(可能是我的搜索太糟糕了….) 无论如何,这是我的问题: 我在引导文件中定义了一个路由: protected function _initRoutes() { $router = $this->frontController->getRouter(); $router->removeDefaultRoutes(); $rou

我不确定如何解决这个问题,或者wat是解决这个问题的最佳方法。也找不到足够的信息让我走上正确的道路(可能是我的搜索太糟糕了….)

无论如何,这是我的问题:

我在引导文件中定义了一个路由:

 protected function _initRoutes()
    {
        $router = $this->frontController->getRouter();
        $router->removeDefaultRoutes();
        $router->addRoute(
            'delete',
            new Zend_Controller_Router_Route('/:controller/:action/:id/',
            array('controller' => ':controller',
                'action' => ':action',
                'id' => ':id',
                )
            )
        );
    }
这非常适合我的更新和删除操作。 现在,我已将分页添加到indexpage。分页需要page参数。因为我没有在我的路由中设置它,它无法通过它,所以我的分页不起作用(就像在结果之间切换一样)

我明白这一点。但是我想要的是,在索引页上,id参数是不必要的,用page参数替换它

尝试用页面替换id的其他路由无效

在引导中是否有解决此问题的好方法,或者是检查操作的最佳方法,并根据操作、索引或更新/删除定义路由。最好的地方是插件


非常感谢您的任何建议或提示

在处理应用程序的另一个方面时,我又遇到了同样的问题。我通过更详细地指定路线解决了这个问题

首先,我删除了
$router->removeDefaultRoutes()规则

而不是(这不起作用):

我现在用这个:

    $router->addRoute(
        'crud',
        new Zend_Controller_Router_Route('/:controller/:action/:id', array('controller' => ':controller', 'action' => ':action', 'id' => ':id'))
    );
    $router->addRoute(
        'pagination',
        new Zend_Controller_Router_Route('/:controller/index/:page', array('controller' => ':controller', 'action' => 'index', 'page' => ':page'))
    );
    $router->addRoute(
        'crud',
        new Zend_Controller_Router_Route('/:controller/:action/:id', array('controller' => ':controller', 'action' => ':action', 'id' => ':id'))
    );
    $router->addRoute(
        'pagination',
        new Zend_Controller_Router_Route('/:controller/index/:page', array('controller' => ':controller', 'action' => 'index', 'page' => ':page'))
    );