Det är viktigt att komma ihåg att modifieraren bara är ett objekt. Följande objekt bokstavligt:
{
a: 1, b: 1,
a: 2, b: 2
}
utvärderar till:
{ a: 2, b: 2 }
eftersom nycklarna tilldelas två gånger, och den sista skrivningen vinner.
I din kod gäller samma idé för $addToSet
och $inc
nycklar. För att fixa det, skriv din update
så här:
Ideas.update("bKXXrpYmppFBfq9Kx", {
$addToSet: {
score: { userId: someUser._id, score: 1 },
votedOnBy: someUser._id
},
$inc: {
overallScore: 1,
timesVotedOn: 1
}
});