diff --git a/index.js b/index.js index cb2fea1..8c60e2b 100644 --- a/index.js +++ b/index.js @@ -58,7 +58,7 @@ module.exports = function(schema, options) { const parentDoc = isSubdocument ? this.ownerDocument() : this; const isNew = typeof parentDoc.isNew === "boolean" ? parentDoc.isNew : !isQuery; - const conditions = indexOptions.partialFilterExpression || {}; + let conditions = {}; each(paths, name => { let pathValue; @@ -113,6 +113,7 @@ module.exports = function(schema, options) { if (model.baseModelName && indexOptions.partialFilterExpression === null) { model = model.db.model(model.baseModelName); } + conditions = {$and: [conditions, indexOptions.partialFilterExpression || {}]}; model.find(conditions).countDocuments((err, count) => { resolve(count === 0); diff --git a/package.json b/package.json index 6ac59e6..e1ea15f 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "mongoose-unique-validator", - "version": "2.1.0", + "version": "2.1.1", "description": "mongoose-unique-validator is a plugin which adds pre-save validation for unique fields within a Mongoose schema.", "main": "index.js", "scripts": {