社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Django

在django中,分页对第二页不起作用,此后,对象将不显示

Harry • 5 年前 • 1485 次点击  

当我单击“下一步”时,应该显示在下一页上的对象将不会显示。

但是第一页显示的是对象(也就是正确的对象数)。

另外,views.py中第5行的“page”是什么?

视图.py

def search(request):
    context ={}
    search_list = Search.objects.all()
    paginator = Paginator(search_list, 4) # Show 4 contacts per page
    page = request.GET.get('page', 1)
    search = paginator.get_page(page)
    context['search'] = search
return render(request, "main.html", context)

main.html(模板)

    {% for result in search %}
      <br>
      {{ forloop.counter }}
      <br>
      {{ result.Query }}
      <!-- {{ search.Result.name }} -->
      <br>
      {{ result.json }}
      <br>
      <br>
      {{ result.json.name }}
      <br>
      <br>
      {{ result.json.price }}
      <br>
      <br>
      {{ result.json.author }}
      <br>
   {% endfor %}

            <div class="pagination">
                <span class="step-links">
                    {% if search.has_previous %}
                        <a href="?page=1">&laquo; first</a>
                        <a href="?page={{ search.previous_page_number }}">previous</a>
                    {% endif %}

                    <span class="current">
                        {{ posts.paginator.count }}
                        Page {{ search.number }} of {{ search.paginator.num_pages }}.
                    </span>

                    {% if search.has_next %}
                        <a href="?page={{ search.next_page_number }">next</a>
                        <a href="?page={{ search.paginator.num_pages }}">last &raquo;</a>
                    {% endif %}
                </span>
            </div>
Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/39716
 
1485 次点击  
文章 [ 1 ]  |  最新文章 5 年前
Vaibhav Vishal
Reply   •   1 楼
Vaibhav Vishal    6 年前

而不是: page = request.GET.get('page', 1) 你需要做的只是 page = request.GET.get('page')
这个 get_page() 下一行的方法负责显示第一页,如果 request.GET['page'] 不存在或包含非整数值。

看看你的模板:

<a href="?page={{ search.next_page_number }">next</a> // missing  closing bracket
<a href="?page={{ search.next_page_number }}">next</a>