gpt4 book ai didi

node.js - Mongoose - 多个模式与一个模式中的对象来存储连接的文档

转载 作者:太空宇宙 更新时间:2023-11-04 02:21:41 24 4
gpt4 key购买 nike

我有MemberSchemaFacebookSchema在我的 Mongo 数据库中。

如果成员(member)注册到我的网站,成员(member)信息将存储在MemberSchema中。

如果注册成员(member)想要连接他的 Facebook 帐户,他需要向我的网站验证他的 Facebook 帐户。那么,他所有的facebook账户信息都会被存储在FacebookSchema中。 .

这是我当前的架构配置:

var Member = new Schema({
email: String,
password: String,
memberType: { type: String , default: 'webaccount' },
facebookAccount: { type: Schema.Types.ObjectId, ref: 'facebook_accounts' }
});

var FacebookAccount = new Schema({
fbId: String,
email: { type : String , lowercase : true},
name: String,
memberType: { type: String , default: 'facebook' }
});

这两个模式通过facebookAcount连接MemberSchema的属性(property).

但我已经考虑过通过 Object 存储这些数据的另一种方式输入架构。

var Member = mongoose.Schema({

webaccount : {
email : String,
password : String,
},
facebook : {
id : String,
token : String,
email : String,
name : String
}
});

您认为,在这种情况下哪种申请方式可能更好?

每种方法的优点和缺点是什么?

提前致谢。

最佳答案

根据我的说法,您应该将 Facebook 数据嵌套到成员集合中。MongoDB 不适合执行连接。

关于node.js - Mongoose - 多个模式与一个模式中的对象来存储连接的文档,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33064241/

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