Tôi biết bài đăng này cũ, nhưng bài đăng vẫn có liên quan. Sau đây sẽ làm việc cho Django 1.9.
Đây là cách để làm điều đó,
views.py
def myview():
Model_one = Model.objects.all()
paginator = Paginator(Model_one, 6)
page = request.GET.get('page1')
try:
Model_one = paginator.page(page)
except PageNotAnInteger:
Model_one = paginator.page(1)
except EmptyPage:
Model_one = paginator.page(paginator.num_pages)
Model_two = Model_other.objects.all()
paginator = Paginator(Model_two, 6)
page = request.GET.get('page2')
try:
Model_two = paginator.page(page)
except PageNotAnInteger:
Model_two = paginator.page(1)
except EmptyPage:
Model_two = paginator.page(paginator.num_pages)
context = {'Model_one': Model_one, 'Model_two': Model_two}
return render(request, 'template.html', context)
Điều quan trọng trên là 'page1' và 'page2'.
Trong mẫu,
{% if model_one %}
<div class="col-md-12 well">
{% for item in model_one %}
..... iterates through model_one.....
{% endfor %}
<span class="step-links pagination">
{% if model_one.has_previous %}
<a href="?page1={{ model_one.previous_page_number }}"> previous </a>
{% endif %}
<span class="current">
Page {{ model_one.number }} of {{ model_one.paginator.num_pages }}
</span>
{% if model_one.has_next %}
<a href="?page1={{ model_one.next_page_number }}"> next </a>
{% endif %}
</span>
</div>
{% endif %}
{% if model_two %}
<div class="col-md-12 well">
{% for item in model_two %}
..... iterates through model_two.....
{% endfor %}
<span class="step-links pagination">
{% if model_two.has_previous %}
<a href="?page2={{ model_two.previous_page_number }}"> previous </a>
{% endif %}
<span class="current">
Page {{ model_two.number }} of {{ model_two.paginator.num_pages }}
</span>
{% if model_two.has_next %}
<a href="?page2={{ model_two.next_page_number }}"> next </a>
{% endif %}
</span>
</div>
{% endif %}
Một lần nữa sử dụng 'page1' và 'page2' để phân biệt các pagination cho mỗi mô hình.
Nguồn
2016-06-14 16:12:15
Tôi đang tìm kiếm điều tương tự. Bạn có tìm được gì không? – andyzinsser