我在mongoid中映射关系,我想知道mongoid的最佳实践。
模型
有四种不同的服务( S1 , S2 , S3 , S4 ),每项服务由特定供应商。我如何映射这些模型或建立它们之间的关系?
提前致谢。
答案 0 :(得分:0)
您可以使用Mongoid中支持的任何一种方法:
Referenced 1-N (aka has_many
)
在此模型中,每个服务都会存储提供它的供应商的_id
,类似于典型的RDBMS。
Embedded 1-N (aka embeds_many
)
在此模型中,每个供应商文档只会存储一个表示其提供的服务列表的内部数据结构。
与MongoDB中的大多数架构决策一样,您选择的方法应该主要基于您的用例,以及您预期应用程序中需要哪些类型的查询。这个问题提供了一个很好的概述何时嵌入与MongoDB中的引用:
有关Mongoid关系的更多详细信息,请参阅Mongoid文档的Relations页面。
答案 1 :(得分:0)
我的2美分:
客户N:1供应商
S1<供应商
S2<供应商
S3<供应商
S4<供应商