微信登录

表模型 - django.db.models - 查 - 多表

表模型 - django.db.models - 查 - 多表

多表查询之反向查询

当在user表中和diary表之间有所关联的时候,通过user模型借助diary关联的条件进行查找user的时候,我们称之为反向查询
查找在diary表中id为2的这个对应的user

  1. user=Usef.objects.filter(diary__id=2)

多表查询值查询关联信息

通过主对象选择需要查找的表对应的related_name,通过value查询具体信息

  1. user=User.objects.get(pk=1)
  2. user.diary.values('content') # 返回id为1的用户的diary的content信息
  3. user.diary.count()) # 返回id为1的用户的diary关联数量

补充:user.diary其实就是Diary模型,我们可以通过它再去调用更多方法,比如get filter再去扩展查询