使用基于mongoid的数据库与所有者和成员进行组建

时间:2016-06-06 13:57:18

标签: ruby-on-rails mongodb associations mongoid

在我的rails应用程序中,我有一个包含其他字段和关联的用户模型。现在我想,我的用户可以制作很多项目,一个项目可以有很多用户作为其中的成员。并且,项目的所有者是创建它的人。因此,整个场景是用户可以是所有者或成员,并且可以是许多项目的一部分。我让我的用户使用设计,我使用mongodb作为我的数据库。我的用户模型中已经有很多字段和关联,现在我很震惊地定义了上述问题的关联和关系。

我找到了一篇与Active记录类似的文章:https://coderwall.com/p/rqjjca/creating-a-scoped-invitation-system-for-rails

但我想使用mongoid和rails 4执行所有操作。

1 个答案:

答案 0 :(得分:0)

上述问题的解决方案并不那么难,因为mongoid允许在rails中使用has_and_belongs_to_many关联,我们可以将其关联为:

在我的users.rb中:

has_and_belongs_to_many: projects

在我的projects.rb中:

has_and_belongs_to_many: users

稍后我们还可以根据我们的要求定义用户角色为admin和member。