2016-06-11 13 views
0

jsonの配列の配列内の特定のjsonを更新したい。 これが私のドキュメントです:マングースを使ってjsonの配列内の特定のjsonを更新する

[ 
    {"email": "[email protected]", 
    "password": "regherhrhrt", 
    "name": "yosi levi", 
    "partner": "nirit levi" 
    "invites" [{ 
    "id" : 4, 
    "status" : "Waiting" 
    }, 
    "id" : 5, 
    "status" : "Waiting" 
    }] 
    }, 
    { "email": "[email protected]", 
    "password": "1234", 
    "name": "yosi joha", 
    "partner": "nirit joha" 
    "invites" [{ 
    "id" : 6, 
    "status" : "Waiting" 
    }, 
    { 
    "id" : 7, 
    "status" : "Waiting" 
    }] 
    } 
] 

と私はポストに次のようなJSON送信:私はマングースを使用してMLABを更新コードが必要

{ 
"inviteEmail" : "[email protected]", 
"id" : 4, 
"status" : "Accepted" 
} 

を。

+0

が、これは単一のドキュメントまたはコレクションの試料内部の分野のための特定の配列です。 – ZeMoon

+0

これはコレクション – MusicGindos

答えて

0

このクエリは動作するはずです:

var documentToUpdate = { 
"inviteEmail" : "[email protected]", 
"id" : 4, 
"status" : "Accepted" 
}; 

db.collection.update({"invites.status": documentToUpdate.id}, {$set : {"invites.$": documentToUpdate}}, function (error, res) { 
    //Handle result 
}) 
+0

のサンプルです。招待状全体を更新したい場合は、招待状に追加のフィールドがあり、5〜6個のフィールドのように更新したいとします。 – MusicGindos

+0

Thx、working !!! – MusicGindos

関連する問題