请选择 进入手机版 | 继续访问电脑版

12360技术网 - 专业IT技术发表平台

 立即注册  找回密码
查看: 5330|回复: 5

模型类多表操作;中间件使用

[复制链接]

24

主题

35

帖子

313

积分

中级会员

Rank: 3Rank: 3

积分
313
发表于 2020-1-27 12:43:40 | 显示全部楼层 |阅读模式
模型类多表操作

模型类一对多,多对多。外键维护。自关联。





user2假设是用户,news是用户发的帖子。一对多,一个用户可以发多个帖子。那么在sender里,to指向user2,on delete外键约束。然后我生成迁移文件,开始迁移。
在MySQL中生成的文件里,news里的sender id就指向了user2里的id。然后我们就开始在终端里,对一对多文件进行操作。

分别实例化对象,然后加入数据。那么news.sender= user就让两个指向连了起来。在数据库中,就可以看到sender id就是id了。同时,我们也可以通过代码指令,看到谁发表了什么帖子,和帖子是谁发表的。

这两行代码可以看到帖子是谁发送的。他视频中谁发送了哪些帖子用的是user.news_set.all().[0].topic这行代码,说是user找到news是通过news_set这种方式。news找到user是通过to指向的。我做的时候发现问题,是因为我加上了后面定义的related name= sender set这个代码,把它删掉应该就没问题。
以上,是一对多的操作,接下来,是多对多的操作。因为上面user找到news是通过news_set的方式,但是现在我把news定义为用户收藏的帖子,帖子可以被多个用户收藏,用户也可以收藏多个帖子,那么我再通过这种方式,找过来的是sender呢,还是collector呢,所以后面就需要加上related_name这个属性。

然后,还是生成迁移文件,执行迁移文件,开始shell,from dashuaige.models import *,之后的操作步骤都是差不多的。
自关联

解决比如北京下面有朝阳,海淀这种问题的时候,用到自关联。

to self,其它的操作也是差不多。
中间件使用



                                                                                                                                       
                                                    
  • 点赞                        
  • 收藏                        
  • 分享                                                                                                                        
  •                                                         
                                      
    • 文章举报                           
                                                
                                                                        
                                            
                                                        weixin_45620570                                                                发布了15 篇原创文章 · 获赞 0 · 访问量 374                                                                                            私信                                                            关注
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x




上一篇:第171场周赛
下一篇:Beego学习(四)orm+mysql
回复

使用道具 举报

0

主题

10

帖子

220

积分

中级会员

Rank: 3Rank: 3

积分
220
发表于 2020-2-3 20:21:25 | 显示全部楼层
我看不错噢 谢谢楼主![www.12360.co]
回复

使用道具 举报

0

主题

5

帖子

115

积分

注册会员

Rank: 2

积分
115
发表于 2020-2-5 10:51:23 | 显示全部楼层
既然你诚信诚意的推荐了,那我就勉为其难的看看吧![www.12360.co]
回复

使用道具 举报

0

主题

21

帖子

451

积分

中级会员

Rank: 3Rank: 3

积分
451
发表于 2020-2-6 02:24:09 | 显示全部楼层
这个帖子不回对不起自己![www.12360.co]
回复

使用道具 举报

0

主题

10

帖子

220

积分

中级会员

Rank: 3Rank: 3

积分
220
发表于 2020-2-7 09:08:59 | 显示全部楼层
其实我一直觉得楼主的品味不错!呵呵![www.12360.co]
回复

使用道具 举报

0

主题

13

帖子

283

积分

中级会员

Rank: 3Rank: 3

积分
283
发表于 6 天前 | 显示全部楼层
楼主发贴辛苦了,谢谢楼主分享![www.12360.co]
回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

12360技术网

GMT+8, 2020-2-17 21:24 , Processed in 0.265395 second(s), 32 queries .

本网站内容收集于互联网,Www.12360.Co不承担任何由于内容的合法性及健康性所引起的争议和法律责任。 欢迎大家对网站内容侵犯版权等不合法和不健康行为进行监督和举报。

© 2019-2020 Www.12360.Co

快速回复 返回顶部 返回列表