Person.objects.all()
获取全部数据 def get_persons(request): persons = Person.objects.all()
# 获取全部数据 context = {
'persons':persons
# 传递到前端代码中
}
return render(request,'person_list.html',context = context)


使用 order_by  默认为 id 进行排序

def get_persons(request):

    persons = Person.objects.all().order_by("p_age")
# 获取全部数据 context = {
'persons':persons
# 传递到前端代码中
}
return render(request,'person_list.html',context = context) 注:
order_by(" 列名 ") 列名写在引号中


 

使用 filter 对表中元素进行筛选
符合条件的留下, .filter(条件).filter(条件) 表示 两个条件都要满足 def get_persons(request):
persons = Person.objects.filter(p_age__gt=30)
'''age 大于 30 的 ''' context = {
'persons':persons
# 传递到前端代码中
}
return render(request,'person_list.html',context = context) 注:
filter 将满足条件的保存下来
gt 表示 大于
lt 表示小于

使用两个 filter 表示 且

def get_persons(request):
persons = Person.objects.filter(p_age__gt=30).filter(p_age__lt=80)
'''.filter .filter 表示且'''
# persons = Person.objects.filter(p_age__gt=30)
'''age 大于 30 的 ''' context = {
'persons':persons
# 传递到前端代码中
}
return render(request,'person_list.html',context = context)


 

exclude 表示不包含的,在条件之外的数据

def get_persons(request):
persons = Person.objects.exclude(p_age__lt=30)
'''age 大于 30 的'''
context = {
'persons':persons
# 传递到前端代码中
}
return render(request,'person_list.html',context = context) 注:
条件 在这里是 p_age__lt=30 即表示 小于 30


Person.objects.exclude(条件).exclude(条件)
表示 两个条件都不满足的数据 def get_persons(request):
persons = Person.objects.exclude(p_age__lt=30).exclude(p_age__gt=80)
'''age 大于 30 的 , 小于 80 的,exclude 除了,不包含的意思 '''
context = {
'persons':persons
# 传递到前端代码中
}
return render(request,'person_list.html',context = context)

 

 


values
获取 <QuerySet [{表中行元素},{表中行元素}, ....,{表中行元素}]> 很类似于 json 数据 def get_persons(request):
persons = Person.objects.exclude(p_age__lt=30).exclude(p_age__gt=80)
'''age 大于 30 的 , 小于 80 的,exclude 除了,不包含的意思 '''
print(persons.values())
context = {
'persons':persons
# 传递到前端代码中
}
return render(request,'person_list.html',context = context) 注:
只是添加了 persons.values()
获取到的数据为 <QuerySet [{'id': 2, 'p_name': 'Hany_ 1', 'p_age': 31, 'p_sex': True}, {'id': 5, 'p_name': 'Hany_ 4', 'p
_age': 78, 'p_sex': False}, {'id': 7, 'p_name': 'Hany_ 6', 'p_age': 47, 'p_sex': True}, {'id': 12, 'p_na
me': 'Hany_ 11', 'p_age': 77, 'p_sex': True}, {'id': 13, 'p_name': 'Hany_ 12', 'p_age': 48, 'p_sex': Fal
se}]>

2020-05-09

 

 

Django学习路12_objects 方法(all,filter,exclude,order by,values)的更多相关文章

  1. Django学习路32_创建管理员及内容补充+前面内容复习

    创建管理员 python manage.py createsuperuser   数据库属性命名限制 1.不能是python的保留关键字 2.不允许使用连续的下划线,这是由django的查询方式决定的 ...

  2. Django学习路21_views函数中定义字典及html中使用类实例对象的属性及方法

    创建 app6 在项目的 settings 中进行注册 INSTALLED_APPS 里面添加 'app6.apps.App6Config' 在 app6 的models.py 中创建数据表 clas ...

  3. Django学习路35_视图使用方法(复制的代码) + 简单总结

    from django.shortcuts import render,redirect from django.http import HttpResponse,JsonResponse from ...

  4. Django学习路11_向数据库中添加 和 获取指定条件数据

    在 views.py 中添加函数 向数据库中添加数据 def add_persons(request): for i in range(15): person = Person() flag = ra ...

  5. Django学习路34_models 文件创建数据表

    from django.db import models # Create your models here. class BookInfoManager(models.Manager): '''图书 ...

  6. Django学习路18_F对象和Q对象

    F 对象: 可以使用模型的 A 属性和 B 属性进行比较 写法: 需要的数据对象 = 数据表(类名).objects.filter(列名__条件=F('列名2')) 需求: 查看男生数量比女生少 的公 ...

  7. Django学习之raw()方法查询数据

    我们经常有这种需求: 用sql来查询以及写入数据到数据库,Django当然也提供了这种方式,那就是通过raw方法: sql = "select * from blog_blog where ...

  8. Django学习路19_is_delete属性,重写类方法,显性隐性属性

    如果在 创建数据表时,使用了 objects = models.Model() 使隐形属性变为了 显性属性 则 必须要自己定义一个 继承了 models.Model 类的类,实现 管理功能 如果一个属 ...

  9. Django学习路17_聚合函数(Avg平均值,Count数量,Max最大,Min最小,Sum求和)基本使用

    使用方法: 类名.objects.aggregate(聚合函数名('表的列名')) 聚合函数名: Avg 平均值 Count数量 Max 最大 Min 最小 Sum 求和 示例: Student.ob ...

随机推荐

  1. centos7在Evolution中配置163邮箱,被阻止收件解决方法

    config.mail.163.com/settings/imap/login.jsp?uid=xxxx@163.com

  2. 深入理解letter-spacing,word-spacing的对比区别

    letter-spacing lletter-spacing 属性增加或减少字符间的空白(字符间距). 该属性定义了在文本字符框之间插入多少空间.由于字符字形通常比其字符框要窄,指定长度值时,会调整字 ...

  3. POJ3190贪心

    题意:这里有N只 (1 <= N <= 50,000) 挑剔的奶牛! 他们如此挑剔以致于必须在[A,B]的时间内产奶(1 <= A <= B <= 1,000,000)当 ...

  4. SpringMVC如何从默认的index.jsp页面跳转到其他页面

    最近学习SpringMVC时,想要做一个登录页面Login.jsp,发现Tomcat服务器默认进入的页面是WEB-INF/index.jsp,查询资料发现如果修改默认页面,还需要修改Tomcat文件目 ...

  5. MISC学习记录 (一)

    A记录 题目 他在看什么视频,好像很好看,不知道是什么网站的. 还好我截取了他的数据包,找呀找. key就是网站名称.格式ctf{key} tip:A记录的第一条. 解题链接 过程 下载解题链接中的文 ...

  6. MCU 51-2 LED and Digital tube Test

    点亮LED实验: #include <reg52.h> sbit LED1 = P1^; sbit LED2 = P1^; sbit LED8 = P1^; void main() { L ...

  7. flask 源码专题(十一):LocalStack和Local对象实现栈的管理

    目录 04 LocalStack和Local对象实现栈的管理 1.源码入口 1. flask源码关于local的实现 2. flask源码关于localstack的实现 3. 总结 04 LocalS ...

  8. redis(八):Redis 哈希(Hash)

    Redis 哈希(Hash) Redis hash 是一个 string 类型的 field 和 value 的映射表,hash 特别适合用于存储对象. Redis 中每个 hash 可以存储 232 ...

  9. Kubernetes部署通用手册 (支持版本1.19,1.18,1.17,1.16)

    Kubernetes平台环境规划 操作环境 rbac 划分(HA高可用双master部署实例) 本文穿插了ha 高可用部署的实例,当前章节设计的是ha部署双master 部署 内网ip 角色 安装软件 ...

  10. 深度理解SpringIOC,面试你根本不需要慌!

    文章已托管到GitHub,大家可以去GitHub查看阅读,欢迎老板们前来Star! 搜索关注微信公众号 码出Offer 领取各种学习资料! 深度理解Spring IOC(控制反转) 一.IOC概述 I ...