在不更改的情况下对 Django 进行分页 url
Paginate Django without changing url
我的 documents_list
视图中有多个 table。他们每个人都有分页(Django 分页器),当我单击 next
按钮时,url 发生变化,table 再次隐藏。我该如何解决这个问题?
P.S: 我正在使用 Bootstrap tables,当页面初始化时所有 tables 默认隐藏,点击相应按钮后 table 正在显示。我想在更改页面时停留在当前 table。
html
:
...
<div class="pagination">
<span class="step-links">
{% if page_obj.has_previous %}
<a href="?page={{ page_obj.previous_page_number }}">prev</a>
{% endif %}
<span class="current">
{{ page_obj.number }}
</span>
{% if page_obj.has_next %}
<a href="?page={{ page_obj.next_page_number }}">next</a>
{% endif %}
</span>
</div>
views.py
:
...
claim_documents = ClaimDocument.objects.all().order_by('-created_date')
paginator = Paginator(claim_documents, 2)
page = request.GET.get('page', 1)
try:
page_obj = paginator.page(page)
except PageNotAnInteger:
page_obj = paginator.page(1)
except EmptyPage:
page_obj = paginator.page(paginator.num_pages)
context = {
'page_obj': page_obj,
...
}
我使用 Datatables 而不是 customizind Django
的分页。
请试试这个。这里我们使用get_page
方法。
...
claim_documents = ClaimDocument.objects.all().order_by('-created_date')
paginator = Paginator(claim_documents, 2)
page = request.GET.get('page')
paginator = Paginator(data, 10)
page_obj = paginator.get_page(page)
context = {
'page_obj': page_obj,
...
}
这个可能对你有帮助。
我的 documents_list
视图中有多个 table。他们每个人都有分页(Django 分页器),当我单击 next
按钮时,url 发生变化,table 再次隐藏。我该如何解决这个问题?
P.S: 我正在使用 Bootstrap tables,当页面初始化时所有 tables 默认隐藏,点击相应按钮后 table 正在显示。我想在更改页面时停留在当前 table。
html
:
...
<div class="pagination">
<span class="step-links">
{% if page_obj.has_previous %}
<a href="?page={{ page_obj.previous_page_number }}">prev</a>
{% endif %}
<span class="current">
{{ page_obj.number }}
</span>
{% if page_obj.has_next %}
<a href="?page={{ page_obj.next_page_number }}">next</a>
{% endif %}
</span>
</div>
views.py
:
...
claim_documents = ClaimDocument.objects.all().order_by('-created_date')
paginator = Paginator(claim_documents, 2)
page = request.GET.get('page', 1)
try:
page_obj = paginator.page(page)
except PageNotAnInteger:
page_obj = paginator.page(1)
except EmptyPage:
page_obj = paginator.page(paginator.num_pages)
context = {
'page_obj': page_obj,
...
}
我使用 Datatables 而不是 customizind Django
的分页。
请试试这个。这里我们使用get_page
方法。
...
claim_documents = ClaimDocument.objects.all().order_by('-created_date')
paginator = Paginator(claim_documents, 2)
page = request.GET.get('page')
paginator = Paginator(data, 10)
page_obj = paginator.get_page(page)
context = {
'page_obj': page_obj,
...
}
这个