我正在使用django-pagination对我的temlate中的对象列表进行分页。我已经安装了应用,将其添加到我的项目中,并在pagination.middleware.PaginationMiddleware
文件中添加了settings.py
。但是当我尝试在我的模板中使用它时,object_list不是paginated
。这是我的模板代码
{% extends "base.html" %}
{% load pagination_tags %}
{% autopaginate Questions %}
{% block title %}
Questions
{% endblock %}
{% block content %}
<div id="contentDiv">
{% for question in Questions %}
<div style="padding:5px 20px 5px 30px;">
<p class='question'><span id='style2'>Q
<a href="{{ question.get_absolute_url }}" style="text-decoration:none; color:black;"> </span> {{ question.questiontext|safe }} </a>
<span style= 'float:right;'><span style='font-size:12px; color:#099;'><a href="/question/type={{question.type}}"
style='font-size:12px; color:#099;'>{{question.type}}</a></span> <span style='color:#99C; font-size:12px;'>Level: </span><span style='color:#099;font-size:12px;'>{{question.level}}</a></span></span>
</p>
<h2 class='trigger1' ><a href='#'>Answer</a></h2>
<div class='toggle_container' >
<div class='block' style='background-color:#fff; '>
<p class='ans'> {{ question.answer|safe }} </p>
</div>
</div>
</div>
{% endfor %}
<div class="pagination" style="width:1000px; margin:auto; margin-bottom:20px;">
{% paginate %}
</div>
</div>
{% endblock %}
对象列表位于名为context_variable
的{{1}}中。我做错了吗?
答案 0 :(得分:2)
很长一段时间后,我找到了django-pagination
的错误。我有规范的基本模板,我在所有页面上扩展。
在文档中写道,我们需要在{% paginate %}
之后放置{% autopaginate object_list %}
,但不要写{% autopaginate object_list %}
本身的位置。
我的模板中有title
和body
个阻止,我将{% autopaginate object_list %}
放在{% extends "base.html" %}
的正下方,因此无效。我发现我必须把这个陈述放在body block
里面,现在它的工作非常好。
答案 1 :(得分:0)
如果你写“你好,我想要一个汉堡”或其他任何东西,你能看到你的分页div的内容吗?
您确定有足够的问题进行分页吗?你可以尝试类似的东西:
{% autopaginate Questions 2 %}
确保您将在2个问题/页面上进行分页。
答案 2 :(得分:0)
解决了Sachin上面所说: 我刚刚移动{%load pagination_tags%} {%autopaginate list_objs 10%} 在{%block content%}语句中(之前它在它之外,所以分页是不可见的。如果没有错误,但现在页面 - 尝试使用它(移动分页块)。