我在symfony论坛上写过这个问题,但没有结果。当然我知道人们可能很忙或者不在,所以我不能马上回答。但我真的需要这么快,所以我也发布在这里。如果以某种方式不允许这样做,请关闭问题。感谢。
最初发布在这里: http://forum.symfony-project.org/viewtopic.php?f=22&t=31537
您好, 我有一些关于在zend lucene中使用zend分页的问题。检查旧论坛,发现: forum.symfony-project.org/viewtopic.php?f=21&t=27342&p=103440&hilit=zend+pagination&sid=1cdc305c262c6b3cf79fdeef25761f34#p103440 但我需要一些额外的功能。我已经在上面的帖子中尝试过代码,但它确实有效。但是我们如何在视野中实现它?
检查zend文档,我在/web/view/scripts/pagination.php中创建了一个视图文件 使用此处的文件代码:
framework.zend.com/manual/1.10/en/zend.paginator.usage.html
对$this->url()
进行一些修改后成为link_to()
然后,行动中的代码如下所示:
$pager = Zend_Paginator::factory($query->execute()->getData());
$pager->setItemCountPerPage(3);
$pager->setCurrentPageNumber($request->getParameter('page', 1));
$pager->setDefaultScrollingStyle('Sliding');
Zend_View_Helper_PaginationControl::setDefaultViewPartial('_pagination.php');
$this->pager = $pager;
并且在视野中:
<?php echo $pager ?>
问题是,这当然是正确的做法吗?
然后,如何获取当前URL并在视图中修改其参数?对于zend,正如我所理解的那样,它就像$this->url(array('page', 5))
。无论如何要在symfony中完成这项工作?
先谢谢。
我也检查了SO并得到了这个: stackoverflow.com/questions/2002648/is-there-a-symfony-helper-for-getting-the-current-action-url-and-changing-one-or
但是我无法在上面提到的pagination.php中访问$ sf_request。我认为这是因为pagination.php访问了Zend的前端控制器。最奇怪的是,我可以访问像UrlHelper这样的默认助手(尝试过url_for和link_to - 它有效)。
聚苯乙烯。抱歉粗体链接 - 现在不能发布超过1个链接。
答案 0 :(得分:0)
查看脚本通常具有.phtml
扩展名,而不是.php
,这无关紧要,但您知道。
尝试更改
$this->pager = $pager;
要
$this->view->pager = $pager;