Использование мангуста и экспресс с MongoDBКак перенаправить рекурсивную схему ссылок Mongodb, Mongoose, Express?
Так что сейчас у меня есть схемы для коробки, коробка может содержать объекты, или он может содержать другие поля:
моей схему для ящиков выглядит следующим образом:
var box = new Schema({
boxId: ObjectId,
boxContents: [{
contentType: {
type: String,
enum: ["box", "object"]
},
typeId: {
subBox: {
type: Schema.Types.ObjectId,
ref: 'box'
},
subObject: {
type: Schema.Types.ObjectId,
ref: 'object'
}
}
}]
});
Я удостоверился, что мой «ref» помечен соответственно именам моделей, поэтому я не считаю, что это проблема. Я создаю новый документ, например, так:
var box1 = new Box({
contents: [{
contentType: 'object',
typeId: {
subObject: object1._id
}
}]
});
Когда я использую:
Control.find({}).populate('contents.typeId')
.exec(function(error, posts) {
console.log(JSON.stringify(posts, null, "\t"));
});
Это не заселить subBox и поля подобъекте :(Если я пытаюсь получить доступ к subBox или подобъекте поля, его .? дает мне неопределенный Что я делаю неправильно
ли, что 'subObject' с этим' _id' существует в базе данных? – Chinni
Да, да, я добавил как subObject, так и subBox, и когда я просматриваю базу данных, оба отображаются вверх –
Можете ли вы обновить свой вопрос с образцовыми объектами, содержащимися в вашей базе данных? – Chinni