Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/54.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails mongoid关系的最佳实践_Ruby On Rails_Ruby_Mongodb_Mongoid_Moped - Fatal编程技术网

Ruby on rails mongoid关系的最佳实践

Ruby on rails mongoid关系的最佳实践,ruby-on-rails,ruby,mongodb,mongoid,moped,Ruby On Rails,Ruby,Mongodb,Mongoid,Moped,我正在映射mongoid中的关系,我想知道mongoid的最佳实践 模型 顾客 服务 供应商 有四种不同的服务S1、S2、S3、S4,每种服务由特定供应商提供。如何映射这些模型或建立它们之间的关系 提前谢谢 您可以选择以下两种方法之一,这两种方法都由Mongoid支持: 在这个模型中,每个服务将存储提供它的供应商的_id,类似于典型的RDBMS 在这个模型中,每个供应商文档只存储一个内部数据结构,表示它提供的服务列表 与MongoDB中的大多数模式决策一样,您选择的方法应该主要基于您的用例,

我正在映射mongoid中的关系,我想知道mongoid的最佳实践

模型

顾客 服务 供应商 有四种不同的服务S1、S2、S3、S4,每种服务由特定供应商提供。如何映射这些模型或建立它们之间的关系


提前谢谢

您可以选择以下两种方法之一,这两种方法都由Mongoid支持:

在这个模型中,每个服务将存储提供它的供应商的_id,类似于典型的RDBMS

在这个模型中,每个供应商文档只存储一个内部数据结构,表示它提供的服务列表

与MongoDB中的大多数模式决策一样,您选择的方法应该主要基于您的用例,以及您预期应用程序中需要的查询类型。此问题提供了在MongoDB中何时嵌入vs.reference的良好概述:

有关Mongoid中关系的更多详细信息,请参见Mongoid文档页面。

只需我的2美分:

客户编号:1供应商

S1<供应商

S2<供应商

S3<供应商

S4<供应商