首页 > 其他 > 详细

django-8-django模型系统

时间:2019-03-20 20:55:19      阅读:144      评论:0      收藏:0      [点我收藏+]
<<<表关系实现>>>
 1.OneToOne
  models.OneToOneField(‘another_table‘, on_delete=models.CASCADE)
 2.OneToMany
  models.ForeignKey(‘another‘,on_delete=models.SET_NULL, null=True)
 3.ManyToMany
  ManyToMany(‘another_table‘,through=‘Enroll‘)
  还要借助一个中间表Enroll
  OnenToMany(‘one‘, on_delete=models.CASCADE)
  OnenToMany(‘another‘, on_delete=models.CASCADE)
<<<关联表的数据操作>>>
 1.OneToMany
  一个模型如果定义了一个外键字段,通过这个模型对外键的操作就叫【正向】
  s.grade = None 把外键删除
  从grade对象反过来对和他关联的模型进行操作【反向】
  table_set 反响管理器
   remove(s)
   clear()这两种方法都立刻马上执行
   set()参数传列表,先执行clear()
  filter(grade__name=‘django‘)
 2.ManyToMany
  指定了中间表,add remove set都不能用,必须用中间表
 3.OneToOne
  直接通过模型的小写就能反向操作
<<<跨表查询>>>
 1.查询课程表里面的男生
 Course.objects.filter(studetns__sex=1)
 2.查询选了python课的学生
 Student.objects.filter(course__name_contains=‘python‘)
 3.查询33期,选英语课的学生
 Student.objects.filter(course__name__contains=‘english‘, grade__num__contains=‘33‘)
 4.查询学费小于3000的学生
 Student.objects.filter(enroll__pay__lt=3000)
 5.查询某一期学习python的学生
 Grade.objects.filter(student__course__name__contains=‘python‘)
 
 
 

django-8-django模型系统

原文:https://www.cnblogs.com/wmkpy/p/10567511.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!