【问题标题】:Friendship relationship with MongoDB与MongoDB的友谊关系
【发布时间】:2011-08-24 14:05:47
【问题描述】:

我是 MongoDB 新手,使用 MongoMapper 寻求一些关联帮助。

我很好奇,因为,你看,我正在尝试建立一些用户朋友关系,我对 Document 和 EmbeddedDocument 之间的区别有点困惑。

我想 User 会是一个 Document,但 Friend 会是 User 的 EmbeddedDocument 还是一个仅被 User 调用(许多 :friends)的 Document?

在我的初步设计中,好友列表只能通过用户访问。

谢谢!

【问题讨论】:

    标签: mongodb mongomapper


    【解决方案1】:

    您问的是一个基本的“嵌入与引用”问题,当涉及到 MongoDB 时,这个问题会被问到很多。答案并不总是显而易见的。

    这是对a similar question 的广泛回复。这是this question 上的官方 MongoDB 文档。

    一般规则之一:

    “头等舱”对象,位于顶部 级别,通常有自己的 收藏。

    在您的情况下,朋友本身可能是一个用户对象。您可能不想将整个 Friend 嵌入到用户中。相反,您可能希望将朋友列表作为数组保存在每个用户内部。 (所以可能是参考)

    【讨论】:

    • 哇,第一个链接真的很有帮助!多么详细的答案!非常感谢!哦,是的,我最终做了同样的事情。我这样声明 = many :friends, :in => :friends_ids, :class_name => 'User'
    猜你喜欢
    • 2012-10-28
    • 2014-09-22
    • 2010-12-22
    • 1970-01-01
    • 2011-08-10
    • 1970-01-01
    • 1970-01-01
    • 2013-07-24
    • 1970-01-01
    相关资源
    最近更新 更多