我试图在ZF2项目中创建动态路线。它将类似于" domain.com/companyurl/products"。公司网址是动态的。我做到了:
'company' => array(
'type' => 'Segment',
'options' => array(
'route' => '[/:company]',
'defaults' => array(
'controller' => 'IndexController',
'action' => 'index',
),
),
'may_terminate' => true,
'child_routes' => array(
...
),
),
但我总是要在路线中传递公司参数。
$this->url('company/products', array('company' => 'companyurl'));
有没有办法在运行时指定基本路由,比如基本网址,那么所有路由都会遵循它?像这样:
$this->url('products');
或
$this->url('company/products');
在这两种情况下,我已经指定了基本路线值。
我希望你理解我的意思。感谢。
答案 0 :(得分:1)
您可以在URL帮助程序中使用$reuseRouteParams
选项:
$this->url($name, $params, $options,$reuseMatchedParameters);
如果将此值设置为true,则会重复使用先前的路由匹配值companyUrl
。
您可以在文档here中阅读更多相关内容。