在mongoid中使用嵌入式和引用的正确方法

时间:2011-04-19 04:49:27

标签: mongodb associations mongoid

我正在建立协会,如下所示

person embeds one address

address references one country address references one province

country embeds many provinces

以上协会是好的吗?我太困惑如何构建它们。我不知道使用mongodb和mongoid来建立联想。

我的主要问题是何时使用嵌入式和何时使用引用关联?

1 个答案:

答案 0 :(得分:5)

MongoDB中的模式设计取决于您将如何查询数据以及如何更新数据。没有通用的硬性规则来确定是否应该嵌入或引用关联。我建议您查看this优秀文章。

关于您建议的架构,您还可以使该国家/地区成为省文档的属性/字段,并且比关系数据库中的规范化更少。这一切都取决于您访问文档的方式。

collection provinces:

{
   name : 'Alabama'
   country : 'United States'
}