2010-05-29 51 views
0

是否有一種簡單的方法來放棄/刪除查詢集中的最後結果而不影響數據庫?刪除查詢集的結果

我想在Django中分頁結果,但不知道給定查詢的對象總數。

我打算使用next/previous或者old/new鏈接,所以我只需要知道這是否是第一頁和/或最後一頁。

首先很容易檢查。要檢查最後一頁,我可以將結果數與頁面大小進行比較,或者進行第二次查詢。當最後一組結果的數量等於頁面大小時,第一種方法無法檢測到最後一頁(即100條記錄分成10頁,最後一頁包含10條結果),並且我想避免進行第二個查詢。

我目前的想法是,我應該從db中獲取pagesize + 1結果。如果查詢集長度等於11,我知道這不是最後一頁,我想在將查詢集傳遞給模板之前放棄查詢集中的最後一個結果。

+0

Django中已經內置了[分頁支持(HTTP: //docs.djangoproject.com/en/1.2/topics/pagination/),因此您不需要手動執行此操作。 – 2010-05-29 11:28:22

回答

0

你可以簡單的切片結果:)

對象= your_pre_sliced_queryset [:PAGESIZE]