1.多表操作之模型创建
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 |
|
2.增
一对一增加
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
|
一对多
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
|
3.多对多添加记录,修改,删除
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
|
4.删
一对一
1 2 3 |
|
一对多
1 2 3 |
|
多对多
1 2 3 4 5 6 7 |
|
多对对多其他api
1 |
|
5.改
一对一
1 2 3 4 5 6 7 |
|
一对多
1 2 3 4 5 6 7 8 9 |
|
6.查
基于对象的跨表查询(正向反向)
关系属性(字段)写在哪个类(表)里面,从当前类(表)的数据去查询它关联类(表)的数据叫做正向查询,反之叫做反向查询
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 |
|
基于双下划线的跨表查询
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 |
|
进阶连续跨表查询
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
|
聚合查询
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
|
分组查询
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 |
|
F和Q查询
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
|
7.ORM使用原生sql
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
|
8.defer和only
1 2 3 4 5 6 7 8 9 10 11 |
|
9.事务(请求,装饰器,局部)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
|
10.多表创建的三种方式
ManyToManyField
1 2 3 4 5 6 7 8 9 10 11 |
|
手动创建第三张表
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
|
中介模式(在ManyToManyField中通过through和through_fields指定表名和字段)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
|
11.ORM语句和SQL语句的优化
1 2 3 4 5 6 7 8 9 10 |
|