查询
2.1基本查询
get 查询单一结果,如果不存在会抛出模型类.DoesNotExist异常。
all 查询多个结果。
count 查询结果数量。
2.2 过滤查询
实现SQL中的where功能,包括
filter 过滤出多个结果
exclude 排除掉符合条件剩下的结果
get 过滤单一结果
过滤条件的表达语法如下:
属性名称__比较运算符=值
# 属性名称和比较运算符间使用两个下划线,所以属性名不能包括多个下划线
1)相等
exact:表示判等。
2)模糊查询
contains:是否包含。
startswith、endswith:以指定值开头或结尾。
3) 空查询
isnull:是否为null。
4) 范围查询
in:是否包含在范围内。
5)比较查询
gt 大于 (greater then)
gte 大于等于 (greater then equal)
lt 小于 (less then)
lte 小于等于 (less then equal)
不等于的运算符,使用exclude()过滤器。
6)日期查询
year、month、day、week_day、hour、minute、second:对日期时间类型的属性进行运算。
F对象
之前的查询都是对象的属性与常量值比较,两个属性怎么比较呢? 答:使用F对象,被定义在django.db.models中。
需要被调用 fr
2.1基本查询
get 查询单一结果,如果不存在会抛出模型类.DoesNotExist异常。
all 查询多个结果。
count 查询结果数量。
2.2 过滤查询
实现SQL中的where功能,包括
filter 过滤出多个结果
exclude 排除掉符合条件剩下的结果
get 过滤单一结果
过滤条件的表达语法如下:
属性名称__比较运算符=值
# 属性名称和比较运算符间使用两个下划线,所以属性名不能包括多个下划线
1)相等
exact:表示判等。
2)模糊查询
contains:是否包含。
startswith、endswith:以指定值开头或结尾。
3) 空查询
isnull:是否为null。
4) 范围查询
in:是否包含在范围内。
5)比较查询
gt 大于 (greater then)
gte 大于等于 (greater then equal)
lt 小于 (less then)
lte 小于等于 (less then equal)
不等于的运算符,使用exclude()过滤器。
6)日期查询
year、month、day、week_day、hour、minute、second:对日期时间类型的属性进行运算。
F对象
之前的查询都是对象的属性与常量值比较,两个属性怎么比较呢? 答:使用F对象,被定义在django.db.models中。
需要被调用 fr