Руководство по использованию уникального валидатора Mongoose в Node.js

  1. unique: этот метод используется для указания того, что поле должно быть уникальным в коллекции. Обычно оно добавляется как свойство в определение поля в схеме Mongoose.

Пример:

const userSchema = new mongoose.Schema({
  email: {
    type: String,
    unique: true
  },
  // other fields...
});
  1. validate: этот метод позволяет определить пользовательскую логику проверки с помощью функции. Вы можете использовать его в сочетании с методом uniqueдля выполнения дополнительных проверок.

Пример:

const userSchema = new mongoose.Schema({
  email: {
    type: String,
    unique: true,
    validate: {
      validator: function(value) {
        // custom validation logic
      },
      message: 'Invalid email'
    }
  },
  // other fields...
});
  1. isUnique: этот метод используется для проверки уникальности значения в коллекции. Это может быть полезно, если вы хотите выполнить проверку уникальности вручную.

Пример:

const User = mongoose.model('User', userSchema);
User.isUnique({ email: 'example@example.com' }, function(err, isUnique) {
  if (err) {
    // handle error
  } else {
    console.log('Is unique:', isUnique);
  }
});