positional $
をお試しください
クエリドキュメントに一致する最初の要素のプレースホルダーとして機能する更新の演算子。使用するときは、cards
を確認してください。 配列フィールドは、クエリドキュメントの一部として表示される必要があります。あなたの場合、cards
を追加したいと思います 'cards'
に文書化する 配列。ただし、cardId
の場合のみ 存在しません:
var query = {
"cardInfo.cards.cardId": { "$nin": ["somecardid"] }
};
var update = {
"$push": {
"cardInfo": { "customerId": "25934285649875" },
"cardInfo.$.cards": {
cardId: "somecardid",
cardType: "type",
createdAt: new Date().toISOString(),
isActive: true
}
}
};
Customer.update(query, update, function (err, result) { ... });