Entfernen Sie den Positionsoperator ($
) aus der query
Parameter des update
Funktion.
Meteor.users.update(
{
_id:options.userId,
'buyer.boards.title':options.boardTitle
},
{ $push: {
'buyer.boards.$.idArr':options.newId }
}
);
Aus der Dokumentation:
db.collection.update(
{ <array>: value ... },
{ <update operator>: { "<array>.$" : value } }
)
Der Positionsoperator sollte im update
verwendet werden -Parameter und nicht in der query
Parameter. Dadurch werden nur die ersten boards
aktualisiert Objekt, das den passenden title
hat .