2015-01-31 54 views
0

我已經爲1000個項目結果集每頁10個項目實現了服務器端分頁,因此它每頁分頁10個項目。當我有客戶端的時候,我可以一次寫10頁,如果我排序,它會對整個1000個項目進行排序,但每頁只顯示10個項目。但是,使用服務器端分頁(其中,REST調用一次只返回10個項目),我的排序一次只能在1頁內,因爲它無法與尚未調用的其他990項目進行比較。服務器端分頁,但代價是丟失排序

鑑於此,如何在整個項目中進行服務器端分頁和排序?這假定我使用的是使用 AngularJS提供的REST/JSON。

有趣的是,在使用郵遞員這樣的工具進行REST調用時,即使跳過它也能正確保持整體順序,但在我的Angular應用程序中使用分頁調用時,它僅在項目內部命令(例如10) 。

+2

如果您從數據庫中獲取項目,只需在查詢中進行排序('order by ...')。 – Pointy 2015-01-31 18:08:01

+1

如果是MySQL,可以使用LIMIT pagestart,pagesize從結果集中的特定位置開始返回一組行。 – Barmar 2015-01-31 18:09:03

+0

謝謝,我發現問題,我有另一種排序與代碼衝突。我使用的是orderby,一旦我刪除了舊代碼中留下的其他類型,它就按計劃運行。 – Kode 2015-01-31 18:15:39

回答

0

我發現這個問題,在那裏我有一些額外的代碼用於排序仍然在與我的REST調用中的order by衝突的頁面上。