defindex(request):
a =123
b =11.11
c ='abcdefg'
d =True
e =[1,2,3,4]
f =(5,6,7)
g ={8,9,10}
h ={'name':'egon','age':18,'k1':[1,{"hobby":'football'}]}# 模板中使用函数,不要加括号defindex():print("index")return123classStudent():deftest(self):print('test')return"test"print(locals())return render(request,'index.html',locals())
index.html
{{ a }}{{ b }}{{ c }}{{ d }}{{ e }}{{ f }}{{ g }}{{ h }}{{ index }}{{ Student }}{{ Student.test }}
模板中取值,要用点语法
{{ e.1}}{{ h.name }}{{ h.k1.1.hobby }}
1.filter2.all3. first
4. last
5. get
6. values
# select name, age from user, values => 指定获取的数据字段
res = models.User.objects.values('name','age')print(res)# <QuerySet [{'name': 'EGON', 'age': 18}, {'name': 'egon', 'age': 18}]7. values_list
res = models.User.objects.values_list('name','age')print(res)# # <QuerySet [('EGON', 18), ('egon', 18), ('egon1', 19), ('egon2', 20), ('egon3', 21)]>8.distinct()# 前提:数据必须一毛一样, 查询的数据带id字段,去重就没有意义了
res = models.User.objects.values('name').distinct()print(res)9. order_by()# select * from user order by age desc, create_time asc
res = models.User.objects.values('name','age').order_by('age')# 默认是升序
res = models.User.objects.values('name','age','create_time').order_by('-age','create_time')# 降序print(res)10.reverse, 必须先排序
res = models.User.objects.order_by('age').reverse()print(res)11.count 统计当前个数
res = models.User.objects.filter(name='egon').count()print(res)12.exclude() 排除在外
13.exists() 判断数据是否存在
# 基本用不到,因为数据本身自带布尔值