Django学习手册 - 自定义分页函数
前端代码:
<div class="xianshi">
{% for i in info %}
<ul>
<li>{{ i }}</li>
</ul>
{% endfor %}
</div> <div class="yema">
{% for x in yemalist%}
<span>{{ x | safe}}</span>
{% endfor%}
</div>
分页函数代码:
def text(yema, count, data,path):
"""
:param yema: 页码,web前端传递的页码值
:param count: 每页显示数值
:param data: 数据库中读取的数据
:param path: 当前分页页面url路径
:return: 字典数据
""" yema = int(yema)
path1 = path.split('/')[1] start = count * (yema - 1)
end = count * yema
info = data[start:end] if divmod(len(data), count)[1] != 0:
s = divmod(len(data), count)[0] + 2
else:
s = divmod(len(data), count)[0] + 1 yema_list = []
for i in range(1, s):
i2 = "<a href='/%s/%s'>%s</a>" % (path1,i, i)
yema_list.append(i2) if yema<=5:
xy = "<a href='/%s/%s'>下一页</a>" % (path1,yema + 1)
yema_list = yema_list[0:10]
yema_list.append(xy)
elif 6<=yema<=(s-2):
sy = "<a href='/%s/%s'>上一页</a>"% (path1,yema-1)
xy = "<a href='/%s/%s'>下一页</a>" % (path1,yema + 1)
yema_list = yema_list[yema-5:yema+5]
yema_list.insert(0,sy)
yema_list.append(xy)
elif yema==(s-1):
sy = "<a href='/%s/%s'>上一页</a>" % (path1,1)
yema_list = yema_list[-10:-1]
yema_list.insert(0, sy) return {'info': info, "yemalist":yema_list}
后台代码:引入函数,赋值,返回参数即可

测试:

Django学习手册 - 自定义分页函数的更多相关文章
- Django学习手册 - 自定义simple_tag / filter
相关: Django的模板引擎提供一般性的功能函数,通过前端可以实现多数的代码逻辑功能,但它仅支持大多数常见情况下的函数功能,例如if判断,ifequal对比返回值等,复杂一些的函数功能并不支持,例如 ...
- PHPCMS快速建站系列之自定义分页函数
内容分页的实现方法:{pc:content action="lists" catid="$catid" order="id DESC" nu ...
- 第三百一十四节,Django框架,自定义分页
第三百一十四节,Django框架,自定义分页 自定义分页模块 #!/usr/bin/env python #coding:utf-8 from django.utils.safestring impo ...
- Django学习手册 - 初识自定义分页
核心: <a href='http://127.0.0.1:8000/index-%s'>%s<a> 自定义分页 1.前端处理字符 后端的字符 return render(r ...
- python 全栈开发,Day87(ajax登录示例,CSRF跨站请求伪造,Django的中间件,自定义分页)
一.ajax登录示例 新建项目login_ajax 修改urls.py,增加路径 from app01 import views urlpatterns = [ path('admin/', admi ...
- django cookie session 自定义分页
cookie cookie的由来 http协议是无状态的,犹如人生若只如初见,每次都是初次.由此我们需要cookie来保持状态,保持客户端和服务端的数据通信. 什么是cookie Cookie具体指的 ...
- V9自定义分页函数
大家做网站的时候,可能很多时候分页样式都得根据模板的要求来控制的,这时很多人都会去修改全局文件phpcms\libs\functions \global.func.php里的pages()函数,这样问 ...
- 十二 Django框架,自定义分页
自定义分页模块 #!/usr/bin/env python #coding:utf-8 from django.utils.safestring import mark_safe #封装分页类模块 c ...
- phpcms V9自定义分页函数
大家做网站的时候,可能很多时候分页样式都得根据模板的要求来控制的,这时很多人都会去修改全局文件phpcms\libs\functions\global.func.php里的pages()函数,这样问题 ...
随机推荐
- 整合shiro出现【Correct the classpath of your application so that it contains a single, compatible version of org.quartz.Scheduler】
跑的时候出现错误: Description: An attempt was made to call the method org.quartz.Scheduler.getListenerManage ...
- HDU 1560 DNA sequence (迭代加深搜索)
The twenty-first century is a biology-technology developing century. We know that a gene is made of ...
- idea 红线 并提示idea cant resolve symbol
能编译通过说明SDK导入正确,但是为啥我们点击每一个Java文件会出现好多红色的下划线 ,并提示idea cant resolve symbol原因就是可能没有清除原来的历史缓存,导致一些错误,解决方 ...
- [USACO07NOV] Milking Time
题目链接 动态规划转化成 DAG 然后拓扑求解的思路 虽然很简单不过感觉这个新思路会很有用! 如果两个事件互不影响并且有先后关系,就可以连一条有向边,跑最长路可以得到最后的最优解 实际上这还是个背包… ...
- libmysqlclient.so.18: cannot open shared object file
libmysqlclient.so.18: cannot open shared object file 解决libmysqlclient.so.18: cannot open shared obje ...
- jmeter中判断数据库是否存在相应的记录
jmeter判断数据库中是否存在相应记录可以使用count 配合case,然后再加个断言,后面用 变量JMeterThread.last_sample_ok来判断是否存在相应记录 select cas ...
- Hadoop记录-Yarn命令
概述 YARN命令是调用bin/yarn脚本文件,如果运行yarn脚本没有带任何参数,则会打印yarn所有命令的描述. 使用: yarn [--config confdir] COMMAND [--l ...
- STM32学习笔记:【001】常见数据查阅
了方便开发学习,现整理在学习过程中经常查阅的资料 (注意,以下资料都可以在ST给出官方手册中查到) 本人所持型号:STM32F429ZI-DISCOVERY, 芯片内核 :Cortex - ...
- jQuery源码解析对象实例化与jQuery原型及整体构建模型分析(一)
//源码剖析都基于jQuery-2.0.3版本,主要考虑到兼容IE 一.关于jQuery对象实例化的逻辑: 整个jQuery程序被包裹在一个匿名自执行行数内: (function(window,und ...
- Github 开源项目(二)gorun (go语言工具)
gorun是一个工具,可以在Go程序的源代码中放置“爆炸线”来运行它,或者明确运行这样的源代码文件. 它的创建旨在试图让Go更加吸引那些习惯于Python和类似语言的人们,他们使用源代码进行最明显的操 ...