sql >> Database >  >> NoSQL >> MongoDB

Hoe maak je een voorwaardelijke query in Mongoose?

U hoeft Query#where niet te bellen herhaaldelijk, aangezien u alle voorwaarden kunt doorgeven aan Mongoose Model#find als:

var filteredQuery = {},
  acceptableFields = ['gender', 'race', /* etc */ ];

acceptableFields.forEach(function(field) {
  req.query[field] && filteredQuery[field] = req.query[field];
});

var query = Character.find(filteredQuery);

U wilt ook req.query . opschonen afhankelijk van de toegestane parameters die u in gedachten heeft.



  1. Mongoose-query voor documenten van de afgelopen 24 uur, slechts één document per uur

  2. Heeft de lengte van de naam invloed op de prestaties in Redis?

  3. Filter MongoDb-verzameling als veldarray en argumentarray elkaar kruisen

  4. Wat is MongoDB's $min? Waarin verschilt dat van find().sort({the_field:1}).limit(1)?