我有一个看起来像这样的文件:
{
"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
故意不定义超出数组,因为其中的数据可能是高度可变的