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()函数,这样问题 ...
随机推荐
- rm刷机 root
http://www.miui.com/download-290.html http://www.miui.com/shuaji-329.html 小米稳定版 不可以root 只有升级到上面的开 ...
- Luogu P3181 [HAOI2016]找相同字符 广义$SAM$
题目链接 \(Click\) \(Here\) 设一个串\(s\)在\(A\)中出现\(cnt[s][1]\)次,在\(B\)中出现\(cnt[s][2]\)次,我们要求的就是: \[\sum cnt ...
- (Dijkstra) POJ1797 Heavy Transportation
Heavy Transportation Time Limit: 3000MS Memory Limit: 30000K Total Submissions: 53170 Accepted: ...
- mysql删除大表更快的drop table办法
mysql删除大表更快的drop table办法 参考资料:https://blog.csdn.net/anzhen0429/article/details/76284320 利用硬链接和trunca ...
- python OrderDict
# encoding: utf-8 import csv import collections d = {'banana':3,'apple':4,'pear':1,'orange':2} print ...
- 网速测试脚本speedtest_cli的安装与使用
speedtest_cli的安装与使用 1.下载 wget https://raw.github.com/sivel/speedtest-cli/master/speedtest.py 图 1 2.授 ...
- mysql安装绑定my.ini
Windows操作系统中,我们安装Mysql有两个选择: 一是下载MSI点击运行,利用windows系统安装程序的方法按部就班的来安装: 二是下载ZIP,解压出来就能立即使用. 在使用ZIP安装时,安 ...
- Git(时光机-版本回退)
现在,你已经学会了修改文件,然后把修改提交到Git版本库,现在,再练习一次,修改readme.txt文件如下: Git is a distributed version control system. ...
- Tornado基本应用
Tornado简介 Tornado有自己的socket(异步非阻塞,原生支持WebSocket),Django没有. Tornado的模板语言更接近Python风格,比Django要好理解. Demo ...
- python模块之hashlib
摘要算法 1. 摘要算法又称为哈希算法.散列算法,是通过函数将任意长度的数据转化成固定长度的数据串(通常用16进制的字符串表示). 2. 摘要算法将通过摘要函数f()将数据转化成固定长度的摘要(dig ...