我想不通。您如何将 url helper 与自定义路由一起使用?

我的 users Controller 中有一个名为 edit 的方法,我有一个自定义路由,因此可以通过 domain.com/settings(而不是 domain.com/users/edit)调用它

当我以这种方式使用 url 助手时:

<li><a href="<?php echo $this->url(array('controller' => '', 'action' => 'settings')); ?>">Settings</a></li>

它在主页上运行良好,但是一旦我进入设置页面,由 url 助手生成的所有其他链接都会链接到当前 url (domain.com/settings)

任何想法如何解决这一问题?

最佳答案

解决方案是为您的自定义路由添加一个名称。

$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>

一种

关于zend-framework - Zend URL 助手和自定义路由?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4558612/

10-17 02:51