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

arrayFilters v mongodb

Musíte použít new: true získat aktualizovanou hodnotu a přetypovat id do mongoose objectId, aby to fungovalo

Post.findOneAndUpdate(
   { 'posts.replies._id': _id }, 
   { $set: { 'posts.$[post].replies.$[reply].text': "something1" } },
   { arrayFilters: [{ 'post._id': postId }, { 'reply._id': _id }], new: true }
)


  1. MongoDB $sampleRate

  2. Mongoose JS findOne vždy vrátí hodnotu null

  3. Pokud mám id dokumentu mongo jako řetězec, jak jej mohu zadat jako _id?

  4. mongodb získá _id jako řetězec ve vyhledávacím dotazu