Я пытаюсь изменить мой мон goose, чтобы использовать вложенные схемы, чтобы сделать мою базу данных более гибкой. Но у меня возникают проблемы с адаптацией некоторых вызовов функций для работы с новой моделью.
В настоящее время схема выглядит следующим образом: var buildinginfo = new Schema ({
...
, checkout123 : Date
, checkout124 : Date
, checkout125 : Date
, checkout126 : Date
...
}
Здесь "123" и "124" и c являются значениями "bookid". I я пытаюсь изменить схему, чтобы она выглядела примерно так:
var Checkout = new Schema({
"iddate" : Date,
"idnumber" : String
});
var buildinginfo = new Schema({
...
, checkouts: [checkout]
...
}
Текущий код для обновления базы данных выглядит так:
const updateObj = {
"buildid": buildingid
, "secupdated" : dateNow.getTime()
}
updateObj["checkout".concat(bookid)] = 1000 * parseInt(checkouttime) ;
traintracks.findOneAndUpdate({
"buildid": buildingid
}, updateObj, {upsert: true}).exec();
Вот что я пробовал для нового updateObj:
const updateObj = {
"buildid": buildingid
, "checkouts.iddate" : 1000 * parseInt(checkoutTime)
, "checkouts.idnumber" : bookid}
Однако это только добавление одного элемента к оформлению заказа, а не одного для каждого bookid. Справка?