0
我正在使用onapp api與我的一個網站。現在我需要顯示用戶購買的服務器列表。作爲API調用onapp服務器響應的對象,我獲得了這些數據。但有時候,這是一個巨大的列表,所以我需要對它進行分頁。我目前的分頁是面向數據庫的,它選擇特定數量的數據,並根據頁面給出限制。但在API響應。我一次都得到了所有的答覆。分頁API響應
那麼我怎麼能在服務器端分頁,而不是依賴於客戶端分頁..?
我正在使用onapp api與我的一個網站。現在我需要顯示用戶購買的服務器列表。作爲API調用onapp服務器響應的對象,我獲得了這些數據。但有時候,這是一個巨大的列表,所以我需要對它進行分頁。我目前的分頁是面向數據庫的,它選擇特定數量的數據,並根據頁面給出限制。但在API響應。我一次都得到了所有的答覆。分頁API響應
那麼我怎麼能在服務器端分頁,而不是依賴於客戶端分頁..?
從SF1.4調用Web服務時,我不得不做同樣的事情,但在我的情況下,WS承認分頁參數。無論如何,我想用sfPager的結果,所以我創建了一個類從sfPager繼承:然後在我的行動
class sfWSPager extends sfPager {
public function getResults() {
return $this->results;
}
public function init() {
if (0 == $this->getPage() || 0 == $this->getMaxPerPage() || 0 == $this->getNbResults())
$this->setLastPage(0);
else {
$this->setLastPage(ceil($this->getNbResults()/$this->getMaxPerPage()));
}
}
public function setResults($results) {
$this->results = $results;
}
public function setNbResults($nb) {
parent::setNbResults($nb);
}
}
:
$this->pager = new sfWSPager(null);
$this->pager->setResults($dataResultsFromWS);
$this->pager->setNbResults($totalNbOfResults);
$this->pager->setPage($page);
$this->pager->init();
所以我一直使用Symfonys sfPager能力。
是的。這似乎更好。其實我解決了這個問題。我所做的是我在一段時間內獲取所有結果,然後使用array_chunks對其進行分割。現在,通過比較頁碼和索引值將一個塊分配給模板。它正在工作,但表現很差。我會試試這個。感謝您的答案兄弟。 –