的Django 1.11.4分頁並獲得參數
我必須建立與方法的搜索形式=「獲取」。 搜索表單有很多形式。 然後,這個輸入值作爲get參數在url中傳輸。
問題是如何獲得分頁。該數據庫包含數千個對象。分頁是必要的。
這是個什麼文件告訴我們:
https://docs.djangoproject.com/en/1.11/topics/pagination/#using-paginator-in-a-view
,提示是這樣的:
<a href="?page={{ contacts.previous_page_number }}">previous</a>
但是,這會毀了所有的GET參數。
我已成功地發明是:
<a href="{{ request.get_full_path }}&page={{ object_list.previous_page_number }}">previous</a>
這工作。但這是愚蠢的。如果一個向前和向後切換頁面,它會產生這樣結尾的網址:
page=2&page=3&page=2
我不得不看看谷歌是如何管理這個問題。在url的中間,他們開始= 30。並更改此參數:開始= 20,開始= 40。所以,他們切換。
你能幫我理解在Django中如何保存參數和切換頁面嗎?當然,以一種優雅的方式。
我有一個模板標籤我在Github上重用此目的:https://gist.github.com/benbacardi/d6cd0fb8c85e1547c3c60f95f5b2d5e1 – Ben