Django分页故障排除

问题描述

views.py

   from django.shortcuts import render,get_object_or_404,redirect,HttpResponseRedirect
    from .models import Post,Comment
    from django.utils import timezone
    from .forms import PostForm
    from django.contrib.auth.decorators import login_required
    from django.contrib import messages
    from django.urls import reverse
    from django .core.paginator import Paginator,PageNotAnInteger,EmptyPage
    
    
    def post_index(request):
        posts = Post.objects.filter(published_date__lte=timezone.Now()).order_by("published_date")
        paginator = Paginator(posts,4)
        page = request.GET.get('page')
        try:
            post_list = paginator.page(page)
        except PageNotAnInteger:
            post_list = paginator.page(1)
        except EmptyPage:
            post_list = paginator.page(paginator.num_pages)
        return render(request,"blog/post_index.html",{"posts": posts,"page": page,"post_list": post_list})

post_index.html

{% extends "blog/base.html" %}

{% block content %}
    {% for post in posts %}
    <article class="media content-section">
      <img class= "rounded-circle article-img" src="{{ post.author.profile.profile_pic.url }}">
        <div class="media-body">
          <div class="article-Metadata">
            <a class="mr-2" href="{% url 'profile' %}">{{ post.author }}</a>
            <small class="text-muted">{{ post.published_date }}</small>
          </div>
          <h2><a class="article-title" href="{% url 'post_detail' pk=post.pk %}">{{ post.title }}</a></h2>
          <p class="article-content">{{ post.text }}</p>
        </div>
      </article>
    {% endfor %}

    <div class="pagination">
      <div class="section-inner clearfix">
          <p>
              {% if post_list.has_prevIoUs %}
                  <a href="?page={{ post_list.prevIoUs_page_number }}">&lt; Prev</a> |
              {% endif %}
  
              {% if post_list.has_next %}
                  <a href="?page={{ post_list.next_page_number }}">Next &gt;</a>
              {% endif %}
              <span>Page {{ post_list.number }} of {{ post_list.paginator.num_pages }}</span>
          </p>
      </div>
  </div>
{% endblock %}

大家好,我正在尝试对我的网站进行分页,但是它不起作用。地址栏显示还有其他页面,但它们都显示了所有帖子,而不是我认为的每页显示4个帖子。任何人都知道我在做什么错。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...