gpt4 book ai didi

python - ListView Django - 分页中的下一个上一个链接丢失

转载 作者:行者123 更新时间:2023-12-01 05:21:05 25 4
gpt4 key购买 nike

我正在使用 django 使用 ListView 进行分页。一切都按预期进行。但模板上没有下一个和上一个链接。

我在这里遗漏了什么吗?

这是 urls.py

from django.conf.urls import patterns, include, url
from django.contrib import admin
from django.views.generic.list import ListView
from demoapp.models import Candidate
admin.autodiscover()

urlpatterns = patterns('',

url(r'^admin/', include(admin.site.urls)),
url(r'^test/', ListView.as_view(
model=Candidate,
paginate_by='10',
queryset=Candidate.objects.all(),
context_object_name="tasks",
template_name='index.html')),
)

模型.py

from django.db import models
class Candidate(models.Model):
name=models.CharField(max_length=255)

这里是index.html

<ol>
{% for t in tasks %}
<li><p>{{t.name}}</p></li>
{% endfor %}
</ol>
<div class="pagination">
<ul>
{% if paginator.has_previous %}
<li><a href="?page={{ paginator.previous_page_number }}">Previous</a></li>
{% endif %}
{% for pg in paginator.page_range %}
{% if posts.number == pg %}
<li class="active"><a href="?page={{ pg }}">{{ pg }}</a></li>
{% else %}
<li><a href="?page={{ pg }}">{{ pg }}</a></li>
{% endif %}
{% endfor %}
{% if paginator.has_next %}
<li><a href="?page={{ paginator.next_page_number }}">Next</a></li>
{% endif %}
</ul>
</div>

最佳答案

没有显示任何内容,因为 Django 不知道 View 模板中的 paginator 是什么。

查看the example in the documentation ,看来您需要将 View 中的 paginator 替换为 tasks -

<div class="pagination">
<ul>
{% if tasks.has_previous %}
<li><a href="?page={{ tasks.previous_page_number }}">Previous</a></li>
{% endif %}
{% for pg in tasks.page_range %}
{% if posts.number == pg %}
<li class="active"><a href="?page={{ pg }}">{{ pg }}</a></li>
{% else %}
<li><a href="?page={{ pg }}">{{ pg }}</a></li>
{% endif %}
{% endfor %}
{% if tasks.has_next %}
<li><a href="?page={{ tasks.next_page_number }}">Next</a></li>
{% endif %}
</ul>
</div>

关于python - ListView Django - 分页中的下一个上一个链接丢失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22370117/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com