You don't even need a regex route really... You could define a route as:
:controller/:action/:id
and getParam('id') => 1 in your example.
Regards,
Eric
On Feb 29, 2008, at 1:14 PM, Nicolae Namolovan 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.