我用的是代碼的文檔進行分頁數據:尋呼在Django - 原來的查詢字符串丟失
try:
data = paginator.page(request.GET.get('page'))
except PageNotAnInteger:
page = 1
data = paginator.page(1)
except EmptyPage:
data = paginator.page(paginator.num_pages)
和頁:
<div class="pagination">
<span class="step-links">
{% if data.has_previous %}
<a href="?page={{ data.previous_page_number }}">previous</a>
{% endif %}
<span class="current">
<b>Page</b> {{ data.number }} of {{ data.paginator.num_pages }}
</span>
{% if data.has_next %}
<a href="?page={{ data.next_page_number }}">next</a>
{% endif %}
</span>
</div>
但這裏有一個錯誤:當該url包含一個查詢字符串,並且一次單擊該尋呼機,原始查詢字符串就會丟失。例如:
example.com?var1=33&var2=44
,然後當一個點擊 「第2頁」,則網址的
example.com?page=2 # var1=33&var2=44 is lost
代替:
example.com?var1=33&var2=44&page=2
我還沒有找到既沒有標準,也不簡單的方法來解決它。我怎樣才能做到這一點?
UPDATE:
當然,參數的名字,他們的價值觀以及它們是否存在與否不得而知。
分頁程序我曾經提到[這裏]這兩個簡單的解決方案之一(https://simpleisbetterthancomplex.com/snippet/2016 /08/22/dealing-with-querystring-parameters.html)。此外,其重要的是要注意,一個javascript解決方案(如在幾個SO帖子中建議)可能在這裏工作,但可能會影響搜索引擎優化,因爲頁面鏈接不會是真實的URL在那種情況下 – Anupam