我有2个模式(事件,地点)
事件架构如下所示:
var mongoose = require('mongoose');
var bcrypt = require('bcryptjs');
var EventSchema = mongoose.Schema({
_id:mongoose.Schema.Types.ObjectId,
name:{type:String,unique:true},
venue:[{type:mongoose.Schema.Types.ObjectId, ref:'venue'}],
status:{type:Number, default:0}
});
var Event = module.exports = mongoose.model('Event', EventSchema);
场地架构如下所示:
var mongoose = require('mongoose');
var bcrypt = require('bcryptjs');
var VenueSchema = mongoose.Schema({
_id:mongoose.Schema.Types.ObjectId,
name:{type:String,unique:true},
status:{type:Number,default:0}
});
var Venue = module.exports = mongoose.model('Venue', VenueSchema);
我需要输出内容如下所示:
[{
event :{
_id:
name:
venue:[{
_id:
name:
}]
}
}]
请帮我引用模式或nodejs代码中的更改,以便用一对多关系填充相同内容。
答案 0 :(得分:0)
您可以使用Populate实现此目的。
Events.
findOne({ name: 'Casino Royale' }).
populate('venue').
exec(function (err, eventsData) {
if (err) return handleError(err);
console.log('Your data', eventsData);
});