Do something if nothing found with .find() mongoose

When there are no matches find() returns [], while findOne() returns null. So either use:

Model.find( {...}, function (err, results) {
    if (err) { ... }
    if (!results.length) {
        // do stuff here
    }
}

or:

Model.findOne( {...}, function (err, result) {
    if (err) { ... }
    if (!result) {
        // do stuff here
    }
}

Leave a Comment