将参数传递给 zend paginationControl 部分
我有一个页面显示大量数据,包括 Zend_Paginator。 页面操作为 /po/fetch?id=someID
。
我想要做的是将“id”参数传递给 zend paginationControl,这样分页链接将类似于 /po/fetch?id=someID&page=somePage
。不幸的是,我找不到任何关于如何将该参数传递给分页控件的解释。
我对 paginationControl 的调用:
echo $view->paginationControl($paginator, 'Sliding',$control, $params);
其中 $params = array('id' => someID
和我的分页部分是:
<a href=<?= $url.'&page='.$this->first; ?> id="first"> First </a>
<a href=<?= $url.'&page='.$this->previous; ?> id="previous">< Previous</a>
<?php
foreach($this->pagesInRange as $page) {
?>
<a href="<?= $url.'&page='.$page; ?>">.$page.</a> | ;
<?php
}
?>
<a href=<?= $url.'&page='.$this->next;?> id="next"> Next ></a>
<a href=<?= $url.'&page='.$this->last; ?> id="last"> Last </a>
并且我希望 $url
具有指定的形式。
I have a page that displays a lot of data, including Zend_Paginator.
The page action is /po/fetch?id=someID
.
what i want to do is to pass the "id" parameter to zend paginationControl so the pagination links will be something like /po/fetch?id=someID&page=somePage
. unfortunally i can't find anywhere explanation on how i can pass that parameter to the paginationControl.
my call to paginationControl:
echo $view->paginationControl($paginator, 'Sliding',$control, $params);
where $params = array('id' => someID
and my pagination partial is:
<a href=<?= $url.'&page='.$this->first; ?> id="first"> First </a>
<a href=<?= $url.'&page='.$this->previous; ?> id="previous">< Previous</a>
<?php
foreach($this->pagesInRange as $page) {
?>
<a href="<?= $url.'&page='.$page; ?>">.$page.</a> | ;
<?php
}
?>
<a href=<?= $url.'&page='.$this->next;?> id="next"> Next ></a>
<a href=<?= $url.'&page='.$this->last; ?> id="last"> Last </a>
and I want $url
to be of the specified form.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
嘿试试这个,它肯定会起作用......
这里
1
作为id给出,你必须传递你想要的id......喜欢
Hey Try this, It will surely work.....
Here
1
is given as the id you have to pass the id you want.......Like
您的示例代码没有显示如何填充
$url
,但您确实应该使用 URL ViewHelper。因此,例如 - 您之前的链接将变为:
这将返回当前页面的正确 URL,并将
page
参数设置为$this->previous
。因此,如果当前 url 是/users/view?foo=bar&page=5
,上面的代码将输出/users/view?foo=bar&page=4
对于上一个链接。请注意如何保留已存在的任何查询参数。因此,如果显示分页器的 URL 上已存在
id
参数,则上述代码将“正常工作”。但是,如果您仍然需要添加id
参数,您可以这样做:继续我们前面的示例,此代码将输出以下 url:
/users/view?foo =bar&page=4&id={someId}
以下是 URL ViewHelper 的参考文档:
最后一点 - URL ViewHelper 的
$reset
(第三个)参数会非常方便。默认行为是保留当前请求的所有查询参数,但使用true
调用$this->url(array(), 'default', true)
$reset
参数基本上会删除除$urlOptions
中指定的参数之外的所有参数。Your example code doesn't show how
$url
is populated, but you really should be using the URL ViewHelper.So, for example - your previous link would become:
This will return a proper URL to the current page with the
page
parameter set to$this->previous
. So if the current url is/users/view?foo=bar&page=5
, the above code would output/users/view?foo=bar&page=4
for the previous link. Notice how any query parameters that are already present are preserved.So, if the
id
parameter is already present on the URL showing your paginator, the above code will "just work". However, if you still need to add theid
parameter, you can do so like this:To continue from our previous example, this code would output the following url:
/users/view?foo=bar&page=4&id={someId}
Here is the reference documentation for the URL ViewHelper:
One last note - the
$reset
(third) parameter of the URL ViewHelper will come in very handy. The default behavior is to preserve any query parameters of the current request but calling$this->url(array(), 'default', true)
withtrue
for the$reset
parameter will basically remove all parameters except for the ones you specify in$urlOptions
.我遇到了同样的问题,所以我在部分分页器中使用了下面给出的代码。
我已经在分页器部分视图文件(
control.phtml
)中创建了一个函数,或者可能有所不同。现在对于链接,我使用下面给出的代码。
相反,
我确信它也会对其他人有帮助。
I have gone through the same issue so I have used code given below in partial paginator.
I have created a function in paginator partial view file(
control.phtml
) or may be different.Now for links I am using code given below.
Instead of
I am sure it will be helpful to others as well.