我的問題是我想要將數據推送到MongoDb文檔中數組中的指定位置,但是當我推送新數據時,它不會將其添加到正確的位置。如何將數據推送到MongoDB中的現有文檔?
當運行此更新語句:
collection.update({ "schraenke.name": "Schrank1" }, {
$push:
{
"schraenke": [{
"masterbricks": {
"sensor1": { value: "test" }
}
}]
}
});`
從上面的更新結果文件:
{
"_id": "55599876095c6bac18209dfa",
"name": "Serverraum1",
"schraenke": [
{
"name": "Schrank1",
"nummer": "1",
"reihe": "1",
"masterbricks": {
"name": "Mastrebrick2.0",
"uid": "6dKiRt",
"he": "1-20",
"sensor1": {
"name": "Temperatur",
"uid": "qvf"
}
}
},
[
{
"masterbricks": {
"sensor1": {
"value": "test"
}
}
}
],
]
}
值字段應加"sensor1"
,但它增加了一個新的數組。
我預期的結果是:
{
"_id": "55599876095c6bac18209dfa",
"name": "Serverraum1",
"schraenke": [
{
"name": "Schrank1",
"nummer": "1",
"reihe": "1",
"masterbricks": {
"name": "Mastrebrick2.0",
"uid": "6dKiRt",
"he": "1-20",
"sensor1": {
"name": "Temperatur",
"uid": "qvf",
"value" : "test"
}
}
},
]
}
我在做什麼錯?
您的預期成果是什麼?你的'value'字段應該是一個數組還是一個單值? – bagrat
我期待的結果是: { 「_id」: 「55599876095c6bac18209dfa」, 「名」: 「Serverraum1」, 「schraenke」: { 「名」: 「Schrank1」, 「nummer」:「 1「, 」reihe「:」1「, 」masterbricks「:{ 」name「:」Mastrebrick2。0" , 「UID」: 「6dKiRt」, 「他」: 「1-20」, 「傳感器1」:{ 「名」: 「Temperatur」, 「UID」: 「QVF」, 「值「: 」測試「 }} } , ] } – mk2015
該值被添加到傳感器1 – mk2015