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

Node.js Mongoose .update med ArrayFilters

Jeg ved ikke, om Mongoose 5.0.0 formodes at understøtte Arrayfilters ud af boksen, men du kan opnå det ved at bruge Mongooses kommando-metode, som udføres direkte på MongoDB, og kan derfor bruge alle tilgængelige funktioner, som inkluderer ArrayFilters på MongoDB 3.6.1

Eksempel:

mongoose.connection.db.command({
  update: <YourModel>.collection.name,
  updates: [
    {
      q: { 'field1.field2._id': mongoose.Types.ObjectId(<someObjectid>) },
      u: {
        $set: { 'field1.$.field2.$[field].fieldToUpdate': "updated!" },
      },
      arrayFilters: [
        { 'field._id': mongoose.Types.ObjectId(<someObjectid>) },
      ],
    },
  ],
})


  1. Mongodb - dublerede felter i $set og $setOnInsert

  2. skubbe objekt ind i array-skema i Mongoose

  3. Spring Data MongoDB - Hvor oprettes et indeks programmatisk til en Mongo-samling?

  4. FEJL:Kan ikke skrive pid-fil til /var/run/mongodb/mongod.pid:Ingen sådan fil eller mappe inf fedora 20