①常用的查询
rs = User.objects.all()
rs = User.objects.first()
rs = User.objects.last()
rs = User.objects.filter(name="yuntuan")
注意:filter(**kwargs)方法:根据参数提供的提取条件,获取一个过滤后的 QuerySet。
rs = User.objects.exclude(name="yuntuan")
rs = User.objects.get(name="yuntuan")
注意:get返回的对象具有唯一性质,如果符合条件的对象有多个,则 get 报错!
rs = User.objects.order_by("age")
rs = User.objects.order_by("age", "id")
rs = User.objects.order_by("-age")
rs = User.objects.all().values()
rs = User.objects.count()
# 查询对象的条件
查询对象的条件的意思是传给以上方法的一些参数。相当于是 SQL 语句中的 where 语句后面的条件,语法为“字段名__规则”:
rs = User.objects.filter(name__exact="yuntuan")
iexact 跟 exact ,只是忽略大小写的匹配。
rs = User.objects.filter(name__contains="yuntuan")
icontains 跟 contains ,唯一不同是忽略大小写。
rs = User.objects.filter(name__startswith="yuntuan")
istartswith 跟 startswith,只是忽略大小写。
iendswith 跟 istartswith,以什么结尾,忽略大小写。
rs = User.objects.filter(age__in=[18,19,20])
rs = User.objects.filter(age__gt=20)
rs = User.objects.filter(age__gte=20)
rs = User.objects.filter(age__lt=20)
rs = User.objects.filter(age__lte=20)
rs = User.objects.filter(age__range=(18,20))
rs = User.objects.filter(country__isnull=True)
rs = User.objects.all()[:2]
注意:不能使用负数作为切片。
② Field 的常用参数
③常用的模型字段类型
例子: