mangTomany 自关联之个人感悟

Posted 不想放弃,所以一直在坚持

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mangTomany 自关联之个人感悟相关的知识,希望对你有一定的参考价值。

介绍:

应用场景:评论表

manyTomany 原则上就是一个类 自己建立一个关系表

这个关系表的列 由自己定义

例如 图中 from_userinfo_id() 是人为规定的 男生列  to_userinfo_id是女生列

这时候 我们想通过 男生查询出 与自己有关系的女生 ,同时也是反向查询。

思路是 先查询出自己

obj = model.userinfo.object.filter(id=1).first() 此时 查询出的结果集是一个对象 里面封装多个列的信息 select * from userinfo where id = 1

result = obj.m.all() 此时这一步 相当于与关系表 跨表了 反向查询 自动帮我们查询出有关系的数据 类似于 select  to _userinfo_id from userinfo_m where from_userinfo_id = 1(相当于 from _userinfo_id =obj.id)

for i in result:

  print i.nickname

 

obj.m 表示去第一列查询

 

查男生  格式 自己的表名字 这里不在是关联表的名字

obj = model.userinfo.object.filter(id=4).first() 
result = obj.userinfo_set.all() 

for i in result:

  print i.nickbane 

 

外键自关联

reply = model.Foreignkey("x",null=True,blan = True,related_name="ply")

以上是关于mangTomany 自关联之个人感悟的主要内容,如果未能解决你的问题,请参考以下文章

个人感悟之策略模式

个人感悟之CMS的精华和糟粕

个人感悟之设计模式应用场景

2016 博客导读总结 & 个人感悟

关于Linux的一些个人研习感悟

个人感悟