У меня есть документ, который выглядит так:
{
"personName": "Some name",
"metaDetails": {
"visits": 1,
"otherMeta": 32
}
}
Использование Mongoose
для Node.js
. Я хотел бы обновить (или вставить) количество посещений. Вот что у меня так далеко. Я читал о $ позиционном операторе , но я могу быть далеко:
updObj = {}
newKeyString = "metaDetails.$.visits"
updObj[newKeyString] = 1
Person.update {personName: "Some name}, {$inc: updObj}, {upsert: true}, (err, updRes) ->
Однако, похоже, это не обновляет и не вставляет какие-либо документы. Любая помощь?
РЕДАКТИРОВАТЬ: Добавлена модель
mongoose = require 'mongoose'
PersonSchema = new mongoose.Schema
personName:
type: String, index: true, unique: true
metaDetails: []
Это моя модель. metaDetails
намеренно не определен за пределами массива, потому что данные внутри могут быть очень переменными