Проблема маршрутизатора Zend Framework - странное поведение при маршрутизации - PullRequest
0 голосов
/ 08 июля 2010

Я установил следующие маршруты в Zf:

$router->addRoute(
    'page',
    new Zend_Controller_Router_Route('stranka/:niceuri/:id', array('controller' => 'page', 'action' => 'index'))
);
$router->addRoute(
    'cat',
    new Zend_Controller_Router_Route('kategoria/:niceuri/:id', array('controller' => 'category', 'action' => 'index'))
);

Проблема в том, что маршрут 'cat' переписывает другой маршрут 'page' и имитирует маршруты $ this-> url ()также.Это означает, что любые ссылки, использующие маршрут «page» и имеющие определенный параметр «niceuri», имеют значение «niceuri», равное текущей открытой странице, использующей маршрут «cat», которого у них не должно быть.(извините, это имеет смысл для вас?) Есть идеи, как решить это поведение?Большое спасибо.

1 Ответ

0 голосов
/ 08 июля 2010

Я не совсем понял, что вы имели в виду, но ... Когда вы вызываете $ this-> uri helper, вы можете установить имя предпочитаемого маршрутизатора, который будет использоваться для сборки URL. Примерно так:

echo $this->uri(array('niceuri' => 'Ololo', 'id' => '123'), 'page');

Надеюсь, это поможет.

...