Django学习手册 - 初识自定义分页
核心:
<a href='http://127.0.0.1:8000/index-%s'>%s<a>
自定义分页
1.前端处理字符
后端的字符 return render(request,"index.html",{"l传到前端的数据":list})
{{ 传到前端的数据 | safe}}
2.后端处理字符
导入处理的模块 from django.utils.safestring import mark_safe
mark_safe(需要处理的数据)
再传递到前端。 以下是练习的代码:
前端:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<style>
#on_c{
background-color: blueviolet;
color: azure;
}
</style>
</head>
<body>
<div>
<ur>
{% for i in list_info %}
<li>
<a >{{ i }}</a>
</li>
{% endfor %}
</ur>
<div style="width: 360px">
{#方式一,前端处理#}
{#<a href="'http://127.0.0.1:8000/index-%s'">上一页</a>#}
<span>{{ d2_s | safe}}</span>
{% for i2 in d %}
<span>{{ i2| safe}}</span>
{% endfor %}
<span>{{ d3_x |safe}}</span>
{#方式二,后台处理数据#}
{#<span>{{ d }}</span>#}
</div>
</div>
</body>
</html>
url配置:
urlpatterns = [
path('admin/', admin.site.urls),
url('^index-(\d+)/', views.index),
]
views:
from django.shortcuts import render
from django.shortcuts import HttpResponse
from django.utils.safestring import mark_safe list_info = []
for i in range(1,199):
list_info.append(i) def index(request,num1):
#将str转为int
num = int(num1) #每页显示多少数据
a = (num-1)*10
b = num*10
list_info2 = list_info[a:b] #分页长度,默认为10
e,f = divmod(len(list_info), 10)
if f !=0:
c = e+2
else:
c = e+1 #分页跳转
d=[]
for i in range(1,c):
if i == num:
d.append("<a id='on_c' href='http://127.0.0.1:8000/index-%s'>%s<a>"%(i,i))
else:
d.append("<a href='http://127.0.0.1:8000/index-%s'>%s<a>" % (i, i)) #分页 str 数据处理
#方式一,前端处理 #方式二,后端处理
# d2 = mark_safe(d) #选中页面分页 居中
if num > 5:
d2 = d[num-6:num+5]
elif num <= 5:
d2 = d[0:10] #上下翻页
if 1< num < len(d):
d2_s = "<a href='http://127.0.0.1:8000/index-%s'>上一页<a>" % (num-1)
d3_x = "<a href='http://127.0.0.1:8000/index-%s'>下一页<a>" % (num+1)
elif num==1:
d2_s = "<a href='http://127.0.0.1:8000/index-%s'>上一页<a>" % num
d3_x = "<a href='http://127.0.0.1:8000/index-%s'>下一页<a>" % (num + 1)
elif num==len(d):
d2_s = "<a href='http://127.0.0.1:8000/index-%s'>上一页<a>" % (num-1)
d3_x = "<a href='http://127.0.0.1:8000/index-%s'>下一页<a>" % num
#将数值传递至前端
return render(request,"index.html",{"list_info":list_info2,'d':d2,"d2_s":d2_s,"d3_x":d3_x})
Django学习手册 - 初识自定义分页的更多相关文章
- Django学习手册 - 初识django
初识: django简介: 开放源代码的web应用框架 由python语言编写的. 一.框架基本概念(核心): 以上这个图就是 django 的核心逻辑图,必须熟记.后续的所有编程都跟这个图的逻辑息息 ...
- Django Cookie Session和自定义分页
Django中操作Cookie 获取Cookie request.COOKIES['key'] request.get_signed_cookie(key, default=RAISE_ERROR, ...
- Django学习手册 - 自定义分页函数
前端代码: <div class="xianshi"> {% for i in info %} <ul> <li>{{ i }}</li& ...
- Django学习手册 - 自定义simple_tag / filter
相关: Django的模板引擎提供一般性的功能函数,通过前端可以实现多数的代码逻辑功能,但它仅支持大多数常见情况下的函数功能,例如if判断,ifequal对比返回值等,复杂一些的函数功能并不支持,例如 ...
- django学习日志之自定义用户扩展
django 为我们提供了强大的用户认证系统,并且提供了基于该系统的User模型,所以,很多时候,我们有必要对自己的user进行业务扩展,得到满足我们自己业务需求的user.借此,写下自己的感悟. u ...
- Django 学习笔记之七 实现分页
接着上篇,在上篇的基础上实现网页数据分页显示 1.打开views.py,编辑如下 #coding:utf-8from django.shortcuts import render,get_object ...
- Django学习手册 - Form 插件
""" 核心: from django import formsfrom django.forms import fieldsfrom django.forms impo ...
- django 学习手册 - ORM 报错集(随时更新)
报错问题: 问题一:(1050代码) django.db.utils.InternalError: (1050, "Table 'app01_group' already exists&qu ...
- Django学习手册 - ORM数据类型
DOM 字段/参数 配置格式: Module.字段(参数) 常用的字段归纳: 数字 models.AutoField() 自增列(int),必须设置为主键 models.IntegerField() ...
随机推荐
- ceph 安装过程
安装依赖: yum install -y yum-utils && yum-config-manager --add-repo https://dl.fedoraproject.org ...
- Sublime Text3配置及控制台乱码[cmd杀死进程乱码/编译文件乱码]解决方法
[NodeJs] 1.安装 http://nodejs.cn/download/ 2.安装过程省略(因为已经安装过了) 和平时安装软件没区别 3.配置环境 计算机--->属性-->高级系统 ...
- poj1068 【模拟】
Let S = s1 s2...s2n be a well-formed string of parentheses. S can be encoded in two different ways: ...
- linux上搭建nginx
安装包:(按顺序执行过去即可,重复无所谓)c++编译环境 yum install gcc-c++ 安装pcre yum -y install pcre-devel 安装openssl yum -y i ...
- 自学Linux Shell11.4-重定向输入输出
点击返回 自学Linux命令行与Shell脚本之路 11.4-重定向输入输出 Linux 命令默认从标准输入设备(stdin)获取输入,将结果输出到标准输出设备(stdout)显示.一般情况下,标准输 ...
- elasticsearch 安装、配置
elasticsearch:基于java开发,基于RESTful web 接口,提供分布式多用户能力的全文搜索引擎. elasticsearch 安装: 1. java SE Development ...
- Azure HDInsight 上的 Spark 群集配合自定义的Python来分析网站日志
一.前言:本文是个实践博客,演示如何结合使用自定义库和 HDInsight 上的 Spark 来分析日志数据. 我们使用的自定义库是一个名为 iislogparser.py的 Python 库. 每步 ...
- Centos6.5之ssh免密码登录配置
Centos6.5之ssh免密码登录配置 centos ssh 免密码登录 0.说明 这里为了方便说明问题,假设有A和B两台安装了centos6.5的主机.目标是实现A.B两台主机分别能够通过ssh免 ...
- JavaScript表格插件库
DataTables https://datatables.net/ Handsontable https://handsontable.com/ JsGrid http://js-grid.com/ ...
- 洛谷 P3951 小凯的疑惑(数学)
传送门:Problem P3951 https://www.cnblogs.com/violet-acmer/p/9827010.html 参考资料: [1]:http://m.blog.sina.c ...