CNode

mongoose 如何关联多个document?(崩溃状态....)

问答
LLuokejin发布于9 年前最后回复9 年前29 回复7799 浏览0 收藏

大二狗,自学node.js大半年了,终于动手自己做项目了,才发觉自己很多都不懂......最近在mongoose挖坑,苦恼了一周,吃不下睡不着,求求大神们指点迷津~~~!

项目是做一个考试系统——数据库设计大概就是 一个课程里面有 学生和老师,还有题库(他们之间有关联),然后老师和学生里面有关联..... 看了mongoose文档,和上网查阅,然后就做了下面这样: 微信图片_20170424094049.png 微信图片_20170424094054.png 微信图片_20170424094059.png 微信图片_20170424094103.png 微信图片_20170424094106.png

不知道对不对,如果不对的话,请大神们指点一下,求求大家了,我快崩溃了.......

查看回复

回复 (29)

B
beyond5959#1·9 年前

根据你贴的代码根本看不出来对不对。你自己跑一下就知道了啊。

L
Luokejin#2·9 年前
引用 beyond5959根据你贴的代码根本看不出来对不对。你自己跑一下就知道了啊。

@beyond5959 我其实是想了解一下大家用mongodb设计数据库时,是怎么设计他们之间关联的.....

L
Luokejin#4·9 年前
引用 JustforNode@Luokejin 满足数据库范式规则设计呀

@JustforNode 范式规则设计.....我没了解过....刚刚百度一下,mongodb也要遵循这个规则吗?

Y
yuu2lee4#5·9 年前

populate?

J
JustforNode#6·9 年前
引用 Luokejin@JustforNode 范式规则设计.....我没了解过....刚刚百度一下,mongodb也要遵循这个规则吗?

@Luokejin 你不是要设计数据库表么?设计表结构跟用哪个数据库没关系,遵循数据库几个范式规则设计表即可

P
pinxue#7·9 年前

用 Mongo 就不要折腾关联,相关的条目聚合到一个文档里。习惯关联,就去用 MySQL/SQLite 啥的,简单多了。

A
AnzerWall#8·9 年前

你这拼音命名看得我。。。

Z
zxj963577494#9·9 年前

https://github.com/zxj963577494/node-snimay 很简单的一个网站,也有mongoose关联,希望能帮助你

T
tomoya92#10·9 年前

5楼正解 populate
我整理了一篇博客,不介意可以看看 https://tomoya92.github.io/2016/04/28/nodejs-mongoose/

X
xltank#11·9 年前

我觉得还是不要用关系型数据库的思维去设计使用mongodb,用工具都得扬长避短,不然得痛苦死

L
liangtongzhuo#12·9 年前

一对多关系 mongoose Population 连表/关联使用与原理分析 http://www.jianshu.com/p/d700ad062083

I
isbdnt#13·9 年前

建议你用mysql加sequelize,mongodb是用来搞分布式的,对程序员极不友好,需要dba的水平

N
nnliang#14·9 年前

你贴得代码看不出来问题~

L
Luokejin#15·9 年前
L
Luokejin#17·9 年前
引用 nnliang你贴得代码看不出来问题

@nnliang .....主要是查询的时候没头绪

L
Luokejin#20·9 年前
B
beyond5959#21·9 年前
L
Luokejin#23·9 年前
引用 yuu2lee4populate?

@yuu2lee4 一开始我以为这样可以的,不过说实话,那个API文档真看不懂populate,ref,promise等作用,而且我要通过ajax来post动态添加数据,我也不懂。

L
Luokejin#25·9 年前
引用 pinxue用 Mongo 就不要折腾关联,相关的条目聚合到一个文档里。习惯关联,就去用 MySQL/SQLite 啥的,简单多了。

@pinxue 但是如果mongo不用关联又怎么才能实现我的业务呢.....我也觉得应该用mysql的,不过还是觉得折腾一下,学点东西

L
Luokejin#26·9 年前
引用 AnzerWall你这拼音命名看得我。。。

@AnzerWall 尴尬癌都犯了。。。。啊哈哈

L
Luokejin#27·9 年前
引用 zxj963577494https://github.com/zxj963577494/node snimay 很简单的一个网站,也有mongoose关联,希望能帮助你

@zxj963577494 全英文,还是ES6的....(笑着活下去.....) 不过还是很谢谢你,我会认真看的了

D
dayuoba#29·9 年前

在不同的集合里用唯一key做关联 比如db.user {name: aaa} db.teacher {studentName: aaa} 这样就是人工的关联,查的时候也要拿着唯一key 去对应的集合去查。不过我更建议你去用mysql同学:)

参与回复
登录后即可参与回复。登录