Django框架基础知识10-内置分页系统
from django.shortcuts import render, redirect, reverse
from datetime import datetime
# Create your views here.
from django.http import HttpResponse, JsonResponse
from django.template.loader import get_template
from teacher.models import Student, StudentDetail, Grade
from crm.settings import UPLOAD_ROOT
from django.db.models import Q
from django.core.paginator import Paginator
def index(request):
students = Student.objects.all()
arg = {
'_meta': 'asdfadsfa'
}
format_str = '%Y-%m-%d %H:%M:%S'
return render(request, 'teacher/index.html', context={
'students': students,
'format_str': format_str,
'arg': arg
})
def login(request):
# url = reverse('teacher:detail', kwargs={'pk': 12})
# return redirect(url) # 硬编码
if request.method == 'POST':
username = request.POST.get('username', '')
password = request.POST.get('password', '')
if username == 'qixiang' and password == '123456':
return redirect(reverse('teacher:index'))
return render(request, 'teacher/login.html')
def detail(request, pk):
# pk 一般是个id 是整数 primary key
return HttpResponse('学生id为%s的详情页' % pk)
def students(request):
section = '学生列表'
# 获取查询参数
search = request.GET.get('search', '').strip()
if search:
if search.isdigit():
# 是qq,或者电话号码
sts = Student.objects.filter(Q(qq=search)|Q(phone=search), is_deleted=False).order_by('-e_time')
else:
# 说明是姓名
sts = Student.objects.filter(name__contains=search, is_deleted=False).order_by('-e_time')
else:
sts = Student.objects.filter(is_deleted=False).order_by('-e_time')
# 当前页码
page = request.GET.get('page', 1)
page = int(page)
# 每页显示多少数据
per_page = request.GET.get('per_page', 10)
per_page = int(per_page)
paginator = Paginator(sts, per_page) #将查询对象进行分页
sts = paginator.get_page(page) # 当前页的数据
return render(request, 'teacher/students.html', context={
'students': sts,
'section': section,
'search': search,
'per_page': per_page,
'page': page,
})
def students_api(request):
sex = request.GET.get('sex')
sex = int(sex)
students = Student.objects.values('name', 'age', 'sex', 'phone').filter(sex=sex)
students = list(students)
res = {'data': students}
return JsonResponse(res)
Django框架基础知识10-内置分页系统的更多相关文章
- Django框架基础知识01-配置环境
Django框架 Django是个怎样的东西呢? Web应用框架----Django http服务器:用来接受用户请求,并将请求转发给web应用框架进行处理. Web应用框架处理完以后再发送给htt ...
- Django框架基础知识08-表关联对象及多表查询
1.自定义主键字段的创建 AutoFiled(pirmary_key=True) # 一般不会自定义,int类型,自增长 一般不自定义主键. 2.order_by asc desc from djan ...
- Django框架基础知识13-auth系统
我们昨天登录admin时创建的用户信息是存放在哪里了呢? auth系统的数据表: 从表的名称我们就能看出, auth_user,auth_group,auth_permission分别存放了用户,用户 ...
- Django框架基础知识05-自定义模板标签与过滤器
根据一定规则,自己定义出符合需求功能的.用在任何你有需求的地方,因为内置的满足不了我们的需求,不同的东西有不同的定义规则 目前最最重要的就是HOW 一 文件路径配置: templates 存放自定义 ...
- 1.18 Python基础知识 - Python内置函数
官方地址:https://docs.python.org/3.5/library/functions.html abs(x): 返回数字的绝对值 all(iterable): 如果迭代器的所有元素都为 ...
- [python基础知识]python内置函数map/reduce/filter
python内置函数map/reduce/filter 这三个函数用的顺手了,很cool. filter()函数:filter函数相当于过滤,调用一个bool_func(只返回bool类型数据的方法) ...
- Django框架基础知识12-中间件及上下文处理器
Django中间件(Middleware) 是一个轻量级.底层的“插件”系统,可以介入Django的请求和响应处理过程,修改Django的输入或输出. django 中的中间件(middleware) ...
- Django框架基础知识14-类视图
MTV view视图 wsgi函数 def index(request): .... return HttpResponse() 特定的HTTP方法.get,post可以定义单独的方法 继承,多继承, ...
- Django框架基础知识11-会话状态保持及表单
浏览器存储cookie的方式不太安全,那有没有更好些的来存储登入状态的方式呢??? 状态保持----cookie和session: 状态保持: 1.http协议是无状态的:每次请求都是一次新的请求,不 ...
随机推荐
- $ybt\ 【信息学奥赛一本通】题解目录$
[信息学奥赛一本通]题解目录 $ \large -> OJ$ $ problem1000 $ \(Answer\) - > $ \large 1000$ $ problem1001 $ \ ...
- springboot修改项目不需要重启服务器
一.spring-boot-devtools 在pom中直接引入依赖 <dependency> <groupId>org.springframework.boot ...
- springMVC validator验证的使用
http://blog.csdn.net/miketom155/article/details/45058195 1. 实现Validator接口,对数据进行校验 @RequestMapping(va ...
- BZOJ1833(数位dp)
这个数位dp倒是没什么限制条件,只是需要在过程中把每个数字出现次数记录一下即可.记忆化返回时数学算出.框架还是套板子. #include <cstdio> #include <cma ...
- 507 Perfect Number 完美数
对于一个 正整数,如果它和除了它自身以外的所有正因子之和相等,我们称它为“完美数”.给定一个 正整数 n, 如果他是完美数,返回 True,否则返回 False示例:输入: 28输出: True解释: ...
- Log4net系列一:Log4net搭建之文本格式输出
Log4net简介 前言 项目开发中,记录项目日志是必须的,如果非要说日志的重要性(日志可看做,飞机的黑匣子,或者汽车的行车记录仪),根据等级进行记录,方便我们排查相关问题,以后项目运维中,也方便很多 ...
- REST风格笔记
这一篇主要是看了FB的覃超大大的文章,做了一些笔记和自己的思考. 定义: 用URL来定义资源,用HTTP(GET/POST/DELETE/DETC)来描述操作. 1. REST描述的是网络 ...
- python绘图工具包 matplotlib 中文乱码问题
环境: python2.7 windows 8.1 解决: 改配置文件,把字体改为支持中文的字体. 找到python安装目录下的 \Lib\site-packages\matplotlib\mpl-d ...
- 新手玩CSS中的一些黑科技
哎哎 1.鼠标移进网页里,不见了= = *{ cursor: none!important; } 2.简单的文字模糊效果 *{ color: transparent; text-shadow: #11 ...
- SQL Server 2008还原数据库的具体方法
俗话说“好记性不如烂笔头”,在相隔较长的时间段内,每次还原客户的数据库都记不清完全的步骤,为此mark一下. SQL Server 2008一般默认备份的文件格式是bak,即后缀名为.bak.bak文 ...