да, горният код работи перфектно. Вече знам къде беше грешката ми. Исках да го направя бронирано, така че реших, че ще е най-добре да използвам save() на DBCollection в края и изрично да запазя списъка за пазаруване DBObject:
shoppingLists.save( shoppingList );
Сега прочетох в някой друг форум, че обектите, които извличате от базата данни, след това не се синхронизират с базата данни след това (вече ми звучи някак логично :) ). Така че сам презаписвах промените всеки път. След като премахнах реда отгоре, проработи :)
Така че едно важно правило:Когато актуализирате своята DBCollection
– това се изпраща директно в базата данни! – не записвайте DBObject
които сте попитали преди актуализацията! Той ще презапише вашата актуализация!