2011-01-07 66 views
1

我已經在symfony論壇中寫過這個問題,但沒有得到任何結果。當然,我知道人們可能很忙或無法找到,所以我無法馬上得到答案。但我真的需要這麼快,所以我也在這裏發佈。如果這不被允許,請關閉該問題。謝謝。Zend Pagator在Symfony中(用於Lucene搜索結果)

原本張貼在這裏: 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 &體液型= Zend公司+分頁& 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中完成這個任務嗎?

以前感謝。

我也查得並獲得這樣的: stackoverflow.com/questions/2002648/is-there-a-symfony-helper-for-getting-the-current-action-url-and-changing-一個或

但我不能訪問上面提到的pagination.php中的$ sf_request。我認爲這是因爲pagination.php訪問Zend的前端控制器。最奇怪的是,我可以使用UrlHelper這樣的默認助手(嘗試url_for和link_to - 它可以)。

Ps。對不起,以粗體顯示的鏈接 - 現在不能發佈超過1個鏈接。

回答

0

查看腳本通常有一個.phtml擴展名,而不是.php,這並不重要,但只是你知道。

嘗試改變

$this->pager = $pager; 

$this->view->pager = $pager; 
+0

不工作:(它拋出由於錯誤的容載量,約順便說一個.phtml的信息。 – bertzzie 2011-01-08 02:35:11

+0

什麼錯誤? – 2011-01-13 10:47:19