In fact class Zend_Controller_Router_Route_Module implements
Zend_Controller_Router_Route_Interface, so this was took as an example
of implementation and slightly modified under a new name not in the
zend map, I don't think this is a problem.

Even if I would extend class Zend_Controller_Router_Route_Module, the
route() function should be rewrited also by copiyng the original
parent route() code, so it's almost the same.

On Fri, Feb 29, 2008 at 7:19 PM, Tobias Gies <[EMAIL PROTECTED]> wrote:
> you should not edit the Zend Framework files. Rather extend them to
>  create your own implementations.
>
>  On Fri, Feb 29, 2008 at 7:14 PM, Nicolae Namolovan
>
>
> <[EMAIL PROTECTED]> wrote:
>  > Thanks guys, but I think there is no way to change
>  >  Zend_Controller_Router_Route_Module behavior (what by default is the
>  >  default router) without patching it. What I've done, just copy/paste
>  >  it (Zend\Controller\Router\Route\Module.php) in mine library
>  >  directory, and then added after this
>  >
>  >  "                for ($i = 0; $i < $numSegs; $i = $i + 2) {
>  >                     $key = urldecode($path[$i]);
>  >                     $val = isset($path[$i + 1]) ? urldecode($path[$i +
>  >  1]) : null;
>  >                     $params[$key] = $val;
>  >                 }
>  >  "
>  >
>  >  This:
>  >
>  >  "                if ( ($numSegs % 2) == 1) {
>  >                         $params[0] = urldecode($path[$numSegs - 1]);
>  >                 }
>  >  "
>  >
>  >  And to change the default router I did this
>  >
>  >         $compat = new New_Route_Module(); //the new name of the patched 
> class
>  >         $rewriteRouter = new Zend_Controller_Router_Rewrite();
>  >         $rewriteRouter->addRoute('default', $compat);
>  >         $front->setRouter($rewriteRouter);
>  >
>  >  Now if there's a param without key, it will be accessible from a
>  >  controller at $this->_getParam(0).. Just what I wanted.. And still
>  >  have the key->param feature.. Great.
>  >
>  >
>  >
>  >  On Fri, Feb 29, 2008 at 4:39 PM, Vincent <[EMAIL PROTECTED]> wrote:
>  >  > You might be interested in
>  >  > 
> http://framework.zend.com/manual/en/zend.controller.router.html#zend.controller.router.routes.regex
>  >  >
>  >  >
>  >  >
>  >  >
>  >  > On 29/02/2008, Nicolae Namolovan <[EMAIL PROTECTED]> wrote:
>  >  > > Yes, but I want to do one rewrite route for all actions.. I mean
>  >  > > change the default router.
>  >  > > For example, very often I need just one paramater, so it doesn't make
>  >  > > too much sense to pass param name too..
>  >  > > I'd like to get one_param from /controller/action/one_param..
>  >  > > Any way to do that with getParam() ? And how I must rewrite the route
>  >  > > to leave the /key/value behavior and just add /value behavior..
>  >  > >
>  >  > >
>  >  > > On Wed, Feb 27, 2008 at 5:07 PM, James Dempster <[EMAIL PROTECTED]>
>  >  > wrote:
>  >  > > > You might find that this is more what you are looking for?
>  >  > > >
>  >  > 
> http://framework.zend.com/manual/en/zend.controller.router.html#zend.controller.router.basic
>  >  > > >
>  >  > > >
>  >  > > >
>  >  > > > On Wed, Feb 27, 2008 at 12:57 PM, Nicolae Namolovan
>  >  > <[EMAIL PROTECTED]>
>  >  > > > wrote:
>  >  > > > > Is it possible to do a default router with same characteristics as
>  >  > current
>  >  > > > one:
>  >  > > > >
>  >  > > > > Module + controller + action + params:
>  >  > > > >
>  >  > > > > But also with
>  >  > > > > Module + controller + action + 1param:
>  >  > > > > Example:
>  >  > > > > /some/list/1
>  >  > > > >
>  >  > > > > And getParam(0) should return 1.. ?
>  >  > > > >
>  >  > > > > --
>  >  > > > > Sincerely,
>  >  > > > > Nicolae Namolovan.
>  >  > > > >
>  >  > > >
>  >  > > >
>  >  > > >
>  >  > > > --
>  >  > > > /James
>  >  > >
>  >  > >
>  >  > >
>  >  > >
>  >  > > --
>  >  > > Sincerely,
>  >  > >
>  >  > > Nicolae Namolovan.
>  >  > >
>  >  >
>  >  >
>  >  >
>  >  > --
>  >  > Vincent
>  >
>  >
>  >
>  >  --
>  >  Sincerely,
>  >  Nicolae Namolovan.
>  >
>



-- 
Sincerely,
Nicolae Namolovan.

Reply via email to