Django 的 ORM 是创建 SQL 去查询和操作数据库的一个 Python 式的方式。
- 回顾上节的知识点
注:Tb 为 模型 model 的 Class 名,比如 Post.objects.all()
1.返回 QuerySet 对象的方法
>>> Tb.objects.all()
>>> Tb.objects.filter()
>>> Tb.objects.exclude()
>>> Tb.objects.order_by()
>>> Tb.objects.reverse()
>>> Tb.objects.distinct()
2.特殊的QuerySet
>>> Tb.objects.values()
>>> Tb.objects.values_list()
续
3.返回具体对象
>>> Tb.objects.get()
>>> Tb.objects.first()
>>> Tb.objects.last()
续
4.返回布尔值的方法
>>> Tb.objects.exists()
5.返回数字的方法
>>> Tb.objects.count()
- 单表查询
<1> Tb.objects.filter( id__lt=3, id__gt=1 )
获取 id 大于(gt) 1 且 小于(lt) 3 的值
<2> Tb.objects.filter( id__in=[2, 4, 5] )
获取 id 等于 2、4、5的数据
<3> Tb.objects.exclude( id__in=[1, 3] )
得到排除 id 等于 1、3 的数据
<4> Tb.objects.filter( title__contains="博客" )
获取 title 字段包含“博客”的数据
<5> Tb.objects.filter( title__icontains="博客" )
icontains 大小写敏感,获取 title 字段包含“博客”的数据
<6> Tb.objects.filter( id__range=[2, 5] )
获取 id 范围是 2 到 5 的数据
类似的还有:startswith、istartswith、endswith、iendswith