核心知识点: 1.明白表之间的关系 2.根据关联字段确定正反向,选择一种方式 在Django的ORM种,查询既可以通过查询的方向分为正向查询和反向查询,也可以通过不同的对象分为对象查询和Queryset查询. 下面会一一进行讲解,首先给出表结构对应关系,以及表格中的数据: from django.db import models # Create your models here. class Book(models.Model): title = models.CharField(max_le…
Django 08 Django模型基础3(关系表的数据操作.表关联对象的访问.多表查询.聚合.分组.F.Q查询) 一.关系表的数据操作 #为了能方便学习,我们进入项目的idle中去执行我们的操作,通过python manage.py shell 就能进入当前目录下的IDLE,类似于数据库中的python操作 --- import os #导入os ---os.getcwd() #获取当前路径 '/home/pyvip/TK18_07/py_course/hello_django1' ---fr…
前期准备: 创建表 class Book(models.Model): title = models.CharField(max_length=32) price = models.DecimalField(max_digits=8,decimal_places=2) publish_time = models.DateField(auto_now_add=True) #该字段新增数据会自动添加实时时间 #出版社 一对多 外键字段建在多的一方 publish = models.ForeignKe…
表结构概述 model.py : class Something(models.Model): name = models.CharField(max_length=32) class UserType(models.Model): caption = models.CharField(max_length=32) s = models.ForeignKey('Something') # 超级管理员,普通用户,游客,黑河 class UserInfo(models.Model): user =…
django之跨表查询及添加记录 一:创建表 书籍模型: 书籍有书名和出版日期,一本书可能会有多个作者,一个作者也可以写多本书,所以作者和书籍的关系就是多对多的关联关系(many-to-many);     一本书只应该由一个出版商出版,所以出版商和书籍是一对多关联关系(one-to-many). 创建一对一的关系:OneToOne("要绑定关系的表名") 创建一对多的关系:ForeignKey("要绑定关系的表名") 创建多对多的关系:ManyToMany(&qu…
Django之ORM表查询及添加记录 一.创建表 - 书籍模型: 书籍有书名和出版日期,一本书可能会有多个作者,一个作者也可以写多本书,所以作者和书籍的关系就是多对多的关联关系(many-to-many); - 一本书只应该由一个出版商出版,所以出版商和书籍是一对多关联关系(one-to-many). -- 创建一对一的关系:OneToOne("要绑定关系的表名") -- 创建一对多的关系:ForeignKey("要绑定关系的表名") -- 创建多对多的关系:Man…
###############    一对一跨表查询    ################ import os if __name__ == '__main__': os.environ.setdefault("DJANGO_SETTINGS_MODULE", "ORM.settings") import django django.setup() from app01 import models # 一对一查询记录:author和authordetile是一对一…
参考:https://www.cnblogs.com/liwenzhou/p/8660826.html 一  ORM单表操作 1 增删改查 1. 查询 1. 查所有 models.Publisher.objects.all() 2. 查某个具体的记录 models.Publisher.objects.get(id=1) --> 注意查询条件不成立就报错 2. 删除一条记录 models.Publisher.objects.get(id=1).delete() 3. 创建一条记录 models.P…
一.创建表 1.一对多 必须在"多"的表中创建关联字段,在外加约束 class Book(models.Model): id=models.AotuField(primary_key=True) title=models.CharField(max_length=32) publish=models.ForeignKey(to='Publish',on_delete=models.CASCADE) 注:正常为字段起名即可,Django会默认为外键属性拼接_id,以此作为表的字段 to对…
ORM跨表查询和分组查询---二次剖析 阅读目录(Content) 创建表(建立模型) 基于对象的跨表查询 一对多查询(Publish与Book) 多对多查询 (Author 与 Book) 一对一查询(Author 与 AuthorDetail) 基于双下划线的跨表查询 分组查询 多表查询 单表查询 创建表(建立模型) 实例:我们来假定下面这些概念,字段和关系 作者模型:一个作者有姓名和年龄. 作者详细模型:把作者的详情放到详情表,包含生日,手机号,家庭住址等信息.作者详情模型和作者模型之间是…