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

Come creare una query condizionale in Mongoose?

Non è necessario chiamare Query#where ripetutamente, poiché puoi passare tutte le condizioni a Mongoose Model#find come:

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

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

var query = Character.find(filteredQuery);

Ti consigliamo anche di disinfettare req.query a seconda dei parametri consentiti che hai in mente.