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 文件中重新设置 ...
随机推荐
- 解决Maven资源过滤问题
向pom文件添加如下配置 <build> <resources> <resource> <directory>src/main/java</dir ...
- OFRecord 数据格式
OFRecord 数据格式 深度学习应用需要复杂的多阶段数据预处理流水线,数据加载是流水线的第一步,OneFlow 支持多种格式数据的加载,其中 OFRecord 格式是 OneFlow 原生的数据格 ...
- Torchvision模型微调
Torchvision模型微调 本文将深入探讨如何对 torchvision 模型进行微调和特征提取,所有这些模型都已经预先在1000类的magenet数据集上训练完成.将深入介绍如何使用几个现代的C ...
- 孟老板 BaseAdapter封装(四) PageHelper
BaseAdapter封装(一) 简单封装 BaseAdapter封装(二) Header,footer BaseAdapter封装(三) 空数据占位图 BaseAdapter封装(四) PageHe ...
- 编译原理-DFA的化简(最小化)
对于给定的DFA M,寻找一个状态数比M小的DFA M'使得L(M)=L(M') 1.状态的等价性: 假设s和t为M的两个状态 ①若分别从状态s和状态t出发都能读出某个字α而停止于终态,则 ...
- MySQL慢查询日志如何开启以及分析
1.MySQL慢查询日志是什么 (1)MySQL的慢查询日志是MySQL提供的一种日志记录,它用来记录MySQL中查询时间超过(大于)设置阈值(long_query_time)的语句,记录到慢查询日志 ...
- SpringBoot2配置文件application.yaml
源码基于SpringBoot 2.4.4 1.认识配置文件 1.1 配置文件的加载 创建SpringBoot项目的时候,会自动创建一个application.properties文件,该文件是Spri ...
- 不使用synchronized和lock,如何实现一个线程安全的单例
单例,大家肯定都不陌生,这是Java中很重要的一个设计模式.稍微了解一点单例的朋友也都知道实现单例是要考虑并发问题的,一般情况下,我们都会使用synchronized来保证线程安全. 那么,如果有这样 ...
- k8s-nginx二进制报Illegal instruction (core dumped)
1.环境 系统:CentOS 7.3 内核:x86 环境:虚拟机 2.问题 收到一个现场问题,k8s环境中nginx的pod都启动异常. #kubectl get pod |grep nginx ng ...
- 『心善渊』Selenium3.0基础 — 9、使用Seleniun中的By类定位元素
目录 1.使用By定位的前提 2.By定位的方法 3.By定位的使用 4.复数形式的示例 我们还可以通过Seleniun测试框架中的By类,来实现页面中的元素定位. 1.使用By定位的前提 需要导入B ...