Django手动实现简单的分页

1.使用bootstrap官网下bootstrap3下组件-分页-默认分页
2.引用bootstrap3前端的css

<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@3.3.7/dist/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
<nav aria-label="Page navigation">
  <ul class="pagination">
 	{% if page_obj.has_previous%}
    <li><a href="{% url 'front:article_list' %}?p={{page_obj.previous_page_number}}">上一页</a></li>
    {% else%}
    <li class='disabled'><a href="javastript:void(0);">上一页</a></li>
    {% endif%}

	{% for page in paginator.page_range %}
	{% if page == page_obj.number %}
	    <li class='active'><a href="javastript:void(0);">{{page}}</a></li>
	{%else%}
    <li><a href="{% url 'front:artice_list' %}">{{page}}</a></li>
    {% endif %}
    {% endfor %}


        {% if page_obj.has_next %}
            <li><a href="{% url 'front:list' %}?page={{ page_obj.next_page_number }}">下一页</a></li>
        {% else %}
            <li class="disabled"><a href="javascript:void (0)">下一页</a></li>
        {% endif %}
  </ul>
</nav>

4.bootstrap属性类:
5.view.py下:

from django.views.generic import ListView

class ArticleListView(ListView):
    model = models.Article
    template_name = 'article_list.html'
    context_object_name = 'articles'
    paginate_by = 10
    ordering = 'create_time'
    page_kwarg = 'page'

6.urls.py

path('list/', views.ArticleListView.as_view(),name='list'),

7.models.py

class Article(models.Model):
    title = models.CharField(max_length=100)
    content = models.TextField()
    create_time = models.DateTimeField(auto_now_add=True)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值