我无法弄清楚这一点。你如何使用自定义路线的网址助手?
我的users
控制器中有一个名为edit
的方法,我有一个自定义路由,因此可以通过domain.com/settings调用它(而不是domain.com/users/edit )
当我以这种方式使用url帮助时:
<li><a href="<?php echo $this->url(array('controller' => '', 'action' => 'settings')); ?>">Settings</a></li>
它在主页面上运行良好,但是一旦我在设置页面上,url helper生成的每个其他链接都链接到当前url(domain.com/settings)
任何想法如何解决这个问题?
答案 0 :(得分:5)
解决方案是为自定义路线添加名称。
$router->addRoute(
'settingsPage', //this is the name
new Zend_Controller_Router_Route('settings',
array('controller' => 'users',
'action' => 'edit'))
);
当您在前端使用它时,请添加您的路线名称:
<li><a href="<?php echo $this->url(array('controller' => 'users', 'action' => 'edit'), 'settingsPage', true); ?>">Settings</a></li>
一