sql >> Database teknologi >  >> NoSQL >> MongoDB

Skub genstande ind i mongo-arrayet via mongoose

Forudsat, var friend = { firstName: 'Harry', lastName: 'Potter' };

Du har to muligheder:

Opdater modellen i hukommelsen, og gem (almindeligt javascript array.push):

person.friends.push(friend);
person.save(done);

eller

PersonModel.update(
    { _id: person._id }, 
    { $push: { friends: friend } },
    done
);

Jeg prøver altid at gå efter den første mulighed, når det er muligt, fordi det vil respektere flere af de fordele, som mongoose giver dig (kroge, validering osv.).

Men hvis du skriver mange samtidige skrivninger, vil du ramme løbsforhold, hvor du ender med grimme versionsfejl for at forhindre dig i at udskifte hele modellen hver gang og miste den tidligere ven, du tilføjede. Så gå kun til førstnævnte, når det er absolut nødvendigt.



  1. Hvordan opretter man sin egen database i Redis?

  2. Meteor, definer samlinger dynamisk

  3. Jobkø med redis ved hjælp af BLPOP

  4. Hvordan bruger man MongoDB med løfter i Node.js?