python课堂笔记之django-day02(10)

限制查询集
可以对一个查询集进行取下标或者切片操作来限制查询集的结果。
对一个查询集进行切片操作会产生一个新的查询集,下标不允许为负数。
取出查询集第一条数据的两种方式:
python课堂笔记之django-day02(10)
exists:判断一个查询集中是否有数据。True False

  1. 模型类关系
    1) 一对多关系
    例:图书类-英雄类
    models.ForeignKey() 定义在多的类中。
    2) 多对多关系
    例:新闻类-新闻类型类 体育新闻 国际新闻
    models.ManyToManyField() 定义在哪个类中都可以。
    3) 一对一关系
    例:员工基本信息类-员工详细信息类. 员工工号
    models.OneToOneField定义在哪个类中都可以。
  2. 关联查询(一对多)11.1 查询和对象关联的数据
    在一对多关系中,一对应的类我们把它叫做一类,多对应的那个类我们把它叫做多类,我们把多类中定义的建立关联的类属性叫做关联属性。
    例:查询id为1的图书关联的英雄的信息。
    b=BookInfo.objects.get(id=1)
    b.heroinfo_set.all()
    通过模型类查询:
    HeroInfo.objects.filter(hbookid=1)
    例:查询id为1的英雄关联的图书信息。
    h = HeroInfo.objects.get(id=1)
    h.hbook
    通过模型类查询:
    BookInfo.objects.filter(heroinfo
    id=1)
    格式:
    python课堂笔记之django-day02(10)
    由一类的对象查询多类的时候:
    一类的对象.多类名小写_set.all() #查询所用数据
    由多类的对象查询一类的时候:
    多类的对象.关联属性 #查询多类的对象对应的一类的对象
    由多类的对象查询一类对象的id时候:
    多类的对象. 关联属性_id

转载于:https://blog.51cto.com/13517854/2315087

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值