Django基础010--ORM操作
orm返回的数据有两种,QuerySet,object
1.QuerySet支持链式编程,可以在all()后面继续.方法
teachers = models.Teacher.objects.all()
tea_name = teachers.values('name')#过滤字段,获取我们希望获取的字段
count = teachers.count()#获取qs的个数
firstData = teachers.first()#获取qs的第一个数据
value_name = teachers.values_list('name')#只返回要求过滤的字段的value值不返回key
2.object
teacher = models.Teacher.objects.get(id=1)
teachername = teacher.name
3.orm过滤 filter
teacher = models.Teacher.objects.filter(name__contains='大')#过滤 模糊查询
teacher = models.Teacher.objects.filter(name__endswith="牛")#以什么结尾
teacher = models.Teacher.objects.filter(name__startswith="大")#以什么开头
teacher = models.Teacher.objects.filter(name__in=['花开富贵','魏无羡'])#过滤 在什么范围内
teacher = models.Teacher.objects.filter(name__isnull=True)#过滤 为空
teacher = models.Teacher.objects.filter(id__gt=1)#过滤 大于
teacher = models.Teacher.objects.filter(id__gte=1)#过滤 大于等于
teacher = models.Teacher.objects.filter(id__lt=1)#过滤 小于
teacher = models.Teacher.objects.filter(id__lte=1)#过滤 小于等于
student = models.Student.objects.filter(id__range=[1,4])#过滤 小于
4.排除
#排除
#除了name=花开富贵的,其他的都查询出来
teacher = models.Teacher.objects.exclude(name='花开富贵')
5.多条件查询
#and where id = 1 and name = '魏无羡'
teacher = models.Teacher.objects.filter(id=1,name='魏无羡') #or操作
#导入from django.db.models import Q
#where id = 1 or name = 魏无羡
teacher = models.Teacher.objects.filter(Q(id=1) | Q(name='魏无羡'))#or 只要条件满足 就把数据都查询出来 #where id = 1 and name = '魏无羡'
teacher = models.Teacher.objects.filter(Q(id=1) & Q(name='魏无羡'))#and 条件同时满足,查询数据 #where id = 1 and name != '魏无羡'
teacher = models.Teacher.objects.filter(Q(id=1) & ~Q(name='魏无羡'))#and 取反
Django基础010--ORM操作的更多相关文章
- 初学Django基础02 ORM操作
django的ORM操作 之前我们知道了models.py这个文件,这个文件是用来读取数据结构的文件,每次操作数据时都走这个模块 常用字段 AutoField int自增列,必须填入参数 primar ...
- Django基础之ORM操作
################################################################## # PUBLIC METHODS THAT ALTER ATTRI ...
- Python/Django(CBV/FBV/ORM操作)
Python/Django(CBV/FBV/ORM操作) CBV:url对应的类(模式) ##====================================CBV操作============ ...
- Django - 表与ORM操作
Django - 表与ORM操作 一. 模板语言 模板中也有自己的语言, 该语言可以实现数据展示 - {{ 变量 }} - 循环 {% for i in all_publisher %} {{ for ...
- Django基础之jQuery操作
Django基础之jQuery操作 jquery之cookie操作 定义:让网站服务器把少量数据储存到客户端的硬盘或内存,从客户端的硬盘读取数据的一种技术: 下载与引入:jquery.cookie.j ...
- day 66 Django基础之jQuery操作cookie
Django基础之jQuery操作cookie jquery之cookie操作 定义:让网站服务器把少量数据储存到客户端的硬盘或内存,从客户端的硬盘读取数据的一种技术: 下载与引入:jquery. ...
- day 62 Django基础之jQuery操作cookie
Django基础之jQuery操作cookie jquery之cookie操作 定义:让网站服务器把少量数据储存到客户端的硬盘或内存,从客户端的硬盘读取数据的一种技术: 下载与引入:jquery. ...
- Django专题之ORM操作2
Django ORM操作 目录 一般操作 看专业的官网文档,做专业的程序员! 回到顶部 必知必会13条 <1> all(): 查询所有结果 <2> get(**kwargs ...
- Django 模型层 ORM 操作
运行环境 1. Django:2.1.3 version 2. PyMysql: 0.9.3 version 3. pip :19.0.3 version 4. python : 3.7 versio ...
- django基础 -- 5. ORM 数据库操作
一. ORM 对象关系映射 类 ------ 表 类对象 ------ 记录 类属性 ------ 字段 二. 连接数据库配置 1.在 setting.py 文件中重新设置 ...
随机推荐
- Go语言的函数06---闭包函数
package main import "fmt" /* 李逵和武松的Study方法的逻辑是几乎一模一样的 然而为了分别保存两人的学习进度,需要开辟两个全局变量,函数内部的需要使用 ...
- maxscrip_import_csv_构建对象
3DMAX通过脚本文件批量操作相当有效率,国内关于maxscript的资料比较少,知识点比较零散,逐步进行补充. 导入文件: filepath = "... Data\\01_us.csv& ...
- AIFramework框架Jittor特性(下)
AIFramework框架Jittor特性(下)
- PyTorch神经网络集成技术
PyTorch神经网络集成技术 create_python_neuropod 将任意python代码打包为一个neurood包. create_python_neuropod( neuropod_pa ...
- httprunnermanager安装和配置
服务端安装mysql数据库(建议5.7以上的,mysql安装教程),设置utf-8编码,创建对应的数据库,设置好相应的用户名,密码,然后启动mysql 下载httprunnermanager 安装ht ...
- Pandas高级教程之:Dataframe的合并
目录 简介 使用concat 使用append 使用merge 使用join 覆盖数据 简介 Pandas提供了很多合并Series和Dataframe的强大的功能,通过这些功能可以方便的进行数据分析 ...
- SpringBoot数据访问(一) SpringBoot整合Mybatis
前言 SpringData是Spring提供的一个用于简化数据库访问.支持云服务的开源框架.它是一个伞形项目,包含了大量关系型数据库及非关系型数据库的数据访问解决方案,其设计目的是为了使我们可以快速且 ...
- 如何基于 String 实现同步锁?
如何基于String实现同步锁? 在某些时候,我们可能想基于字符串做一些事情,比如:针对同一用户的并发同步操作,使用锁字符串的方式实现比较合理. 因为只有在相同字符串的情况下,并发操作才是不被允许的. ...
- 如何开启O2优化
O2环境会使你的程序跑的特别快,然而大多数正式考试都不能开O2 然而平时做有些题强制开O2,会出现在本机运行正确,但是交上去RE的情况,这时你就要开O2了. 例如在本机运行时会有下标为-但可以运行,而 ...
- Web 动画原则及技巧浅析
在 Web 动画方面,有一套非常经典的原则 -- Twelve basic principles of animation,也就是关于动画的 12 个基本原则(也称之为迪士尼动画原则),网上对它的解读 ...