【发布时间】:2012-10-03 07:13:59
【问题描述】:
我正在尝试使用 zend 框架 (v 1.11) 开发应用程序。我对这个框架完全陌生。
我有一个这样的网址。
http://xyz.local/client/feedback/index/username/abc/page/2
以上链接指向client模块,feedback控制器的index动作。
每个请求都需要 url 参数 username 以及有效值。
在此页面上,我已对所有反馈进行了分页。我的问题是,当我从 index 操作导航到相同或不同控制器中的其他操作时,参数名称 /page/2 仍保留在 url 中。
假设如果我导航到同一控制器的 new 操作,那么新的 URL 会像这样显示
http://xyz.local/client/feedback/new/username/newClient/page/2
本来应该是这样的
http://xyz.local/client/feedback/new/username/newClient
使用$this->url(array('module' => 'client', 'controller' => 'feedback', 'action' => 'new'), null, true) 会重置所有参数,包括用户名,这是我不想要的。
Zend 的标准做法是什么。
【问题讨论】:
-
您可以将用户名传递给视图并将其添加到 url 的参数中:
$this->url(array('module' => 'client', 'controller' => 'feedback', 'action' => 'new', 'username' => $username), null, true)或者您只需将页面参数设置为null并在调用 URL-ViewHelper 时省略最后一个参数.我认为前者是更清洁的方式...... -
酷,这行得通(以前的方法).. 谢谢。 :) 你能把这个回复作为这个问题的答案发布吗?
标签: zend-framework url-parameters urlvariables