【问题标题】:how to restrict pagination to certain pages in Django如何将分页限制在 Django 中的某些页面
【发布时间】:2020-07-19 17:52:00
【问题描述】:

我是 django 的新手,遵循此示例 (https://www.youtube.com/watch?v=pyElWFn3XT4) ...一切似乎都在工作,但问题在于分页,因为它是在基本页面中配置的,并且反映在所有页面上.. . 我怎样才能将分页限制到某些页面...

代码

<ul class="pagination">

                <li class="page-item {% if not prev_page_url %} disabled {% endif %} ">
                    
                  <a class="page-link" href="{{ prev_page_url }}" tabindex="-1" aria-disabled="true">Previous</a>
                </li>

               {% for n in page.paginator.page_range %}
                   {% if page.number == n %}
                        <li class="page-item active" aria-current="page">
                           <a class="page-link" href=="?page={{n}}">{{n}}<span class="sr-only">(current)</span></a>
                        </li>
                   {% elif n > page.number|add:-3 and n < page.number|add:3  %}
                        <li class="page_item">
                          <a class="page-link" href ="?page={{n}}">{{n}}</a>
                       </li>
                   {% endif %}
                {% endfor %}

                <li class="page-item {% if not next_page_url %} disabled {% endif %} ">
                  <a class="page-link" href="{{next_page_url}}">Next</a>
                </li>

              </ul>

但在此页面或其他 2 个页面上,我不希望显示分页(即显示下一个和上一个按钮)。

有人可以帮我解决这个问题吗....

【问题讨论】:

  • 谁能帮帮我

标签: django pagination


【解决方案1】:

检查是否启用了分页以确定是否要显示按钮

{%if page.paginator %}
    <ul class="pagination">

            <li class="page-item {% if not prev_page_url %} disabled {% endif %} ">
                
              <a class="page-link" href="{{ prev_page_url }}" tabindex="-1" aria-disabled="true">Previous</a>
            </li>

           {% for n in page.paginator.page_range %}
               {% if page.number == n %}
                    <li class="page-item active" aria-current="page">
                       <a class="page-link" href=="?page={{n}}">{{n}}<span class="sr-only">(current)</span></a>
                    </li>
               {% elif n > page.number|add:-3 and n < page.number|add:3  %}
                    <li class="page_item">
                      <a class="page-link" href ="?page={{n}}">{{n}}</a>
                   </li>
               {% endif %}
            {% endfor %}

            <li class="page-item {% if not next_page_url %} disabled {% endif %} ">
              <a class="page-link" href="{{next_page_url}}">Next</a>
            </li>

          </ul>
{% endif %}

【讨论】:

  • 谢谢它的工作,我正在考虑另一个获取分页数,如果它大于 1,则显示
猜你喜欢
  • 1970-01-01
  • 2017-10-09
  • 2011-12-02
  • 2012-10-13
  • 1970-01-01
  • 2012-05-07
  • 1970-01-01
  • 2023-04-09
相关资源
最近更新 更多