4

我有以下两种模式:

公司活动:

var companyEventSchema = new Schema({
    name : String,
    description
    date : Date,
    attendees : [ { type : Schema.ObjectId, ref : 'Member' } ],
]});

和会员

var memberSchema = new Schema({
    name : String,
    emailAddress: String,
    password :String,
    created: { type: Date, default: Date.now }
});

我从 companyEventSchema 中引用 Member 的方式是否正确?我正在尝试做一些很长的 dbref 行。

不过,我看到了一个单独的项目...... mongoose-dbref

但是,猫鼬文档说上面提供了“类似 dbref 的功能”

哪个效率更高?

4

1 回答 1

11

您只需要在字段可以包含引用可能多个集合中的文档的 ObjectId 的情况下使用实际DBRef(and )。mongoose-dbrefADBRef是一个 元组ObjectId,一个集合名称和一个可选的数据库名称。

ref:然而,Mongoose字段只包含一个ObjectId,它是 Mongoose 模式,它定义了 ObjectIds 引用的集合

因此,Mongooseref:字段更有效,除非您需要提供的多集合引用支持,否则应始终使用DBRef

于 2012-11-25T14:37:18.670 回答