我在Zend Url助手方面遇到了一些问题。据我所知,我根据手册做了一切。我的路线是:
$route = new Zend_Controller_Router_Route_Static('client-portal/address-book/edit/:address_id',array('controller' => 'client-portal', 'action' => 'address-edit'));
$router->addRoute('client-portal-settings-address-edit', $route);
我正在用硬编码的值调用它,这样我就不会传递这样的空值:
$this->url(array('address_id' => 3), 'client-portal-settings-address-edit', true);
但是呼叫的输出是:
/client-portal/address-book/edit/:addressId
所以没有参数替换。任何人都可以对此有所了解并帮助解决它的原因吗?
答案 0 :(得分:2)
您正在使用“静态”路由类型,该类型用于完全匹配的网址(即不包含变量的网址)。由于您的网址确实包含变量,因此您可能需要Zend_Controller_Router_Route
代替:
$route = new Zend_Controller_Router_Route(
'client-portal/address-book/edit/:address_id',
array(
'controller' => 'client-portal',
'action' => 'address-edit'
)
);
$router->addRoute('client-portal-settings-address-edit', $route);