我有公司架构:
var CompanyEntityModel = new Schema({
name: String,
street: String,
zipCode: String,
city: String,
members: [Useraccount]
});
Useraccount架构:
var UseraccountEntityModel = new Schema({
firstName: String,
lastName: String,
email: String,
password: String,
companies: [Company],
});
在我的场景中,我将useraccounts保存在useraccount集合中(在db中)并作为嵌入式文档保存在公司内部。所以公司可以有n个useraccounts。 我对公司做同样的事情(它们被保存在公司集合中,并作为嵌入式文档保存在useraccount中。一个useraccount可以有n个公司)。
我也可以将objectIds保存到成员(在公司架构中)和公司(在Useraccount架构中)。
什么更好?如果我坚持我的解决方案并且公司得到更新......我是否必须更新公司集合中的文档以及useraccounts中嵌入文档的所有公司?
答案 0 :(得分:1)
可能会对您有所帮助:http://docs.mongodb.org/manual/reference/database-references/
我首选的方法是将对象ID保存到第二个集合中,并在应用程序端执行第二个查询以获取相关数据。