У меня есть 3 схемы 1. Пользователь 2. SignedToEvent 3. События
Пользователь содержит информацию о пользователе и имеет отношение к SignedToEvents.SignedToEvents связывает пользователя с событием.SignedToEvent вкладывается в User следующим образом:
const mongoose = require('mongoose');
const Schema = mongoose.Schema;
const SignedToEvents = new Schema({
event : { type: Schema.Types.ObjectId, ref: 'event' },
eventSignedDate: {type : Date, default : Date.now()},
isActive : Boolean
})
SignedToEvents.set('toObject', { getters: true });
SignedToEvents.set('toJSON', { getters: true });
const UserSchema = new Schema({
email: String,
password : String,
age : Number,
sex : String,
createdAt: { type: Date, default: Date.now },
signedToEvents : [SignedToEvents]
})
UserSchema.set('toObject', { getters: true });
UserSchema.set('toJSON', { getters: true });
module.exports = mongoose.model('user', UserSchema, 'users');
И схема событий выглядит следующим образом
const mongoose = require('mongoose');
const Schema = mongoose.Schema;
const eventSchema = new Schema({
shortId : String,
name: String,
description : String,
organization : String
})
module.exports = mongoose.model('event', eventSchema, 'events');
В моем API у меня есть вызов к коллекции User:
User.findOne({_id : mongoose.Types.ObjectId(req.userId)})
.select("email")
.populate("event")
.exec()
.then(docs=>{
console.log(docs)
res.status(200).send(docs.signedToEvents)
});
Теперь я надеялся получить совокупную коллекцию User, SignedToEvent и Event.Однако это не так.
Возвращает только идентификатор пользователя и адрес электронной почты.
/ Спасибо