首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用django-tables2显示页码

使用django-tables2显示页码
EN

Stack Overflow用户
提问于 2013-05-07 08:12:15
回答 2查看 5.1K关注 0票数 9

我目前正在使用django-tables2显示一个数据集。

文档没有特别提到这一点,所以我猜这可能需要一些表覆盖-但是,我希望有人已经完成了这一点。

如何在我的表格下面使用django-tables2呈现页码?我希望能够显示的是用户可以单击的页码的水平列表。

提前谢谢。

EN

回答 2

Stack Overflow用户

发布于 2017-05-23 17:37:02

改进@Serafeim答案(或解决他留下的练习):这里有一个分页块,它只使用Django模板语法,呈现满足以下条件的页码:

  • 被封装在一个CSS块中,其中<ul>类与Bootstrap配合得很好;

  • 如果超过8页,则最多显示当前页以下和以上3页;

始终显示

  • 第一页和最后一页,并在它们与范围的开始或结束之间加上省略号(如果需要)。

{% with current_page=table.page.number page_count=table.paginator.num_pages rows_per_page=table.page.object_list|length total_rows=table.page.paginator.count %} {% block Pageing%} {% block pagination.allpages %} {% BLOCKTRAN%}页面{% EndBlockTRAN%} {% for table.paginator.page_range中的页面%} {% with range_start=current_page|add:"-3“range_end=current_page|add:"3”page_count_minus_5=page_count|add:"-5“page_count_minus_1=page_count|add:"-1”%} {% if page == current_page %} {{ page }} {% elif page ==1或page >= range_start和page <= range_end或page == page_count %} {{ page }} {% endif%} {%如果page == 1和current_page >5或page == page_count_minus_1和current_page <= page_count_minus_5 %}... {% Endif%} {% EndWith%} {% Endfor%} {% endblock pagination.allpages %}{% block pagination.cardinality %} {% if total_rows != rows_per_page %} {% block TRANS%} {{ rows_per_第}页,共{{ total_rows }}{% endif trans%} {% Else%} {{ total_rows }} {% endif%} {% if total_rows == 1%} {{ table.data.verbose_name }} {% Else%} {{ table.data.verbose_name_plural }} {% endif%} {% endblock pagination.cardinality %} {% endblock分页%} {% endWith%}

票数 5
EN

Stack Overflow用户

发布于 2019-05-15 20:11:46

分页是在version# >= 2.0.0 https://django-tables2.readthedocs.io/en/latest/pages/CHANGELOG.html中引入的

只需在settings.py中添加以下代码即可。带数字的分页将以bootstap 4样式呈现。确保在html模板中有bootstrap 4引用。

代码语言:javascript
复制
DJANGO_TABLES2_TEMPLATE = 'django_tables2/bootstrap4.html'

并在文档中查看更多样式。https://django-tables2.readthedocs.io/en/latest/pages/custom-rendering.html#available-templates

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16409236

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档