基于Django的python自定义分页模块化实现

本文介绍了如何在Django项目中实现一个模块化的分页功能。首先,通过创建App并配置Urls、Models来搭建环境。接着,通过分析需求,创建数据并展示在前端。然后,通过动态设置开始和结束位置,实现每页固定数量的数据展示。通过封装Views到类和函数,方便复用。最后,处理分页按钮,包括“上一页”、“下一页”和页码显示,确保在数据超出时能正确处理。整个过程使分页功能既节省流量又提升用户体验。
摘要由CSDN通过智能技术生成

1、目的&环境准备

    目的:把分页用模块方式实现,然后在需要分页的地方直接调用模块。

    环境准备:创建一个Django项目,并从中生成一个App,注册之后配置urls&Models。

    配置Urls

from django.conf.urls import url, include
from django.contrib import admin

urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'', include("pages.urls")),
]
from django.conf.urls import url
from pages import views

urlpatterns = [
    url(r'^user_list/', views.user_list),
]

    注册App

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'pages',
]

    配置Models

from django.db import models


# Create your models here.
class UserList(models.Model):
    username = models.CharField(max_length=32)
    age = models.IntegerField()

2、分析&完善代码

    分页功能基本上大部分网站中都是需要的,比如豆瓣话题小组的分页,当我们查看的时候他有很多话题讨论块,而它也不是一下子把所有的话题都返回给我们,它实现如下图的分页来推送博文让我们浏览:

    

    而我们可以根据页面按钮来点击前页和后页或者点击我们想要查看的页面,然后显示我们要查看的话题块和链接!而不是一下把所有内容都给我们显示出来,这样做的好处就是即可以节省流量又能够改善用户的体验。

   那么我们要实现这样的功能,首先要同步表结构生成数据库,之后创建数据(500条即可)。

    配置简单Views创建基础数据

from django.shortcuts import render
from django.shortcuts import HttpRespon
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值