sql >> Databáze >  >> NoSQL >> MongoDB

Dotaz MongoDB pro aktualizaci vnořeného pole

Chcete-li aktualizovat prvek pole, který je proměnnou položky kolekce, můžete provést toto:

  1. Získejte pole:

    var arr =Events.findOne({_id:eventId}).confirms;

  2. Proveďte operaci

  3. Aktualizujte staré pole upraveným polem:

    Events.update({_id:eventId}, {$set:{confirms:arr}});

V případě problémů s krokem 2:můžete iterovat pole a zkontrolovat, zda this.person ===personId, a poté nastavit this.confirmed =isConfirmed &this.timestamp =new Date.

Mohou existovat způsoby, jak pracovat s poli v Mongo, ale tento funguje jistě.




  1. Kolik je $min MongoDB? Jak se to liší od find().sort({the_field:1}).limit(1)?

  2. hromadná aktualizace nodejs mongoose

  3. Jedinečné dokumenty využívající více hodnot v Mongoose Schema

  4. získání atributů schématu z modelu Mongoose