2
我想创建以下默认路由定制“REST风格的”路线:Zend Framework:如何解决这些冲突的自定义路由?
Default Route => Desired Route
=============================================
/events/calendar /events/calendar (stays the same, uses the default route /:controller/:action)
/events/view/id/47 /events/47
/events/overview/id/47 /events/47/overview
/events/page/id/47/page-id/100 /events/47/page/100
我想保持缺省路由,而是提高了先前的默认路由,以提高可读性。我的路线应该如何实现?这是我到目前为止,但他们互相冲突,所以我知道他们不正确。
$router->addRoute('eventsCalendar', new Zend_Controller_Router_Route_Static('/events/calendar', array('controller' => 'events', 'action' => 'calendar')));
$router->addRoute('eventPage', new Zend_Controller_Router_Route('/events/:id/:action/*', array('controller' => 'events', 'action' => 'view')));
这是正确的做法。 ZF以相反的顺序匹配路线,所以你希望你的最具体的路线最后。 – 2010-11-02 21:06:56
+1当我进入自定义路线时,我会稍后在我的项目中检查这一点。 – rvdavid 2010-11-02 22:47:30