gpt4 book ai didi

java - Mongodb 架构

转载 作者:行者123 更新时间:2023-12-01 14:13:09 27 4
gpt4 key购买 nike

我必须保存来自不同社交媒体的用户的不同个人资料。例如用户可能有 1 个 Facebook 和 2 个 Twitter 个人资料。如果我保存每个配置文件它作为新文档插入不同的集合中,例如 facebook 和 twitter 是一个集合,我如何将该文档与另一个文档关联起来。我在 mongodb 中使用了点表示法。如果我关联同一用户的 facebook 和 twitter 个人资料意味着获取记录很容易。我将如何设计模式?还有如何避免重复?是否可以使用 facebook idtwitter id 是唯一的吗?我是 mongoDB 的新手。我如何加入来自不同集合的文档

最佳答案

这是一个 ruby​​ 实现,但希望您能够将模式逻辑转换为您的 java 代码。

 class User
has_one :facebook_profile
has_one :twitter_profile
end

class TwitterProfile
belongs_to :user
end

class FacebookProfile
belongs_to :user
end

您可以对集合强制执行唯一索引,如下所示:

 db.twitter_profiles.ensureIndex({user_id: 1 }, {unique: true})
db.facebook_profiles.ensureIndex({user_id: 1}, {unique: true})

您可以使用任何想要在用户级别强制执行唯一性的字段。

希望有帮助。

关于java - Mongodb 架构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18327855/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com