Я пытаюсь добавить внедренный документ в существующее поле документа.Я нашел один подходящий ответ с поиском, но я сталкиваюсь с ошибками.Я использую node.js, Express и Mongoose.
Мои схемы базы данных:
var entry = new Schema({
name : { type : String, required : true},
description : { type : String, default: ""},
});
var compo = new Schema({
name : String,
description : String,
entries : [entry]
});
И я пытаюсь обновить массив записей следующим кодом
var entry = new entryModel();
entry.name = "new name";
entry.description= "new description";
compoModel.findOne(query, function (err, item) {
if (item) {
item.entries.push(entry);
item.save(function (err) {
if (!err) {
log.debug('Entry added successfully.');
} else {
log.error("Mongoose couldn't save entry: " + err);
}
});
}
});
выдает ошибку: TypeError: Object.keys called on non-object
Что я пропустил?