错误
Error()
Error.CastError
Error.DivergentArrayError
Error.DocumentNotFoundError
Error.MissingSchemaError
Error.MongooseServerSelectionError
Error.OverwriteModelError
Error.ParallelSaveError
Error.StrictModeError
Error.StrictPopulateError
Error.ValidationError
Error.ValidatorError
Error.VersionError
Error.messages
Error.prototype.name
Error()
参数
msg
«String» 错误消息
类型
- «constructor»
继承
MongooseError 构造函数。MongooseError 是所有 Mongoose 特定错误的基类。
示例
const Model = mongoose.model('Test', new mongoose.Schema({ answer: Number }));
const doc = new Model({ answer: 'not a number' });
const err = doc.validateSync();
err instanceof mongoose.Error.ValidationError; // true
Error.CastError
类型
- «property»
当 Mongoose 无法将值转换为类型时,将返回此错误类的实例。
Error.DivergentArrayError
类型
- «property»
如果您使用数组投影,然后以不安全的方式修改数组,将返回此错误的实例。
Error.DocumentNotFoundError
类型
- «property»
当 save()
失败因为底层文档未找到时,将返回此错误类的实例。构造函数接受一个参数,即 Mongoose 在尝试更新文档时传递给 updateOne()
的条件。
Error.MissingSchemaError
类型
- «property»
当您尝试访问尚未注册的模型时抛出。
Error.MongooseServerSelectionError
类型
- «property»
当 MongoDB Node 驱动程序无法连接到有效服务器以发送操作时抛出。
Error.OverwriteModelError
类型
- «property»
当在连接上已经注册了具有给定名称的模型时抛出。参见 关于 OverwriteModelError
的常见问题解答。
Error.ParallelSaveError
类型
- «property»
当您在同一文档上并行多次调用 save()
时,将返回此错误类的实例。有关更多信息,请参阅 常见问题解答。
Error.StrictModeError
类型
- «property»
当您尝试将未在模式中指定的值传递给模型构造函数或在 strict
模式为 "throw"
时更改不可变属性时抛出。
Error.StrictPopulateError
类型
- «property»
当 Mongoose 无法填充不存在的路径时,将返回此错误类的实例。
Error.ValidationError
类型
- «property»
当 验证 失败时,将返回此错误类的实例。errors
属性包含一个对象,其键是失败的路径,其值是 CastError 或 ValidationError 的实例。
Error.ValidatorError
类型
- «property»
ValidationError
有一个 errors
哈希,它包含单独的 ValidatorError
实例。
示例
const schema = Schema({ name: { type: String, required: true } });
const Model = mongoose.model('Test', schema);
const doc = new Model({});
// Top-level error is a ValidationError, **not** a ValidatorError
const err = doc.validateSync();
err instanceof mongoose.Error.ValidationError; // true
// A ValidationError `err` has 0 or more ValidatorErrors keyed by the
// path in the `err.errors` property.
err.errors['name'] instanceof mongoose.Error.ValidatorError;
err.errors['name'].kind; // 'required'
err.errors['name'].path; // 'name'
err.errors['name'].value; // undefined
ValidatorError
实例具有以下属性
kind
: 验证器的type
,例如'required'
或'regexp'
path
: 失败验证的路径value
: 失败验证的值
Error.VersionError
类型
- «property»
当您在数据库中的文档以潜在不安全的方式更改后调用 save()
时,将返回此错误类的实例。有关更多信息,请参阅 versionKey
选项。
Error.messages
类型
- «property»
参见
默认内置的验证器错误消息。
Error.prototype.name
类型
- «String»
错误的名称。名称唯一标识此 Mongoose 错误。可能的取值为
MongooseError
: 一般 Mongoose 错误CastError
: Mongoose 无法将值转换为模式路径中定义的类型。可能位于ValidationError
类中的errors
属性中。DivergentArrayError
: 您尝试save()
一个数组,该数组在您使用$elemMatch
或类似投影加载它后被修改了。MissingSchemaError
: 您尝试使用mongoose.model()
访问未定义的模型。DocumentNotFoundError
: 您尝试save()
的文档未找到。ValidatorError
: 来自单个模式路径验证器的错误ValidationError
: 从validate()
或validateSync()
返回的错误。在.errors
属性中包含零个或多个ValidatorError
实例。MissingSchemaError
: 您在没有模式的情况下调用了mongoose.Document()
。ObjectExpectedError
: 当您使用 设置严格模式 将嵌套路径设置为非对象值时抛出。ObjectParameterError
: 当您将非对象值传递给期望对象作为参数的函数时抛出。OverwriteModelError
: 当您调用mongoose.model()
重新定义已经定义的模型时抛出。ParallelSaveError
: 当您在同一个文档实例正在保存时,对文档调用save()
时抛出。StrictModeError
: 当您设置不在模式中的路径并且 严格模式 设置为throw
时抛出。VersionError
: 当 文档不同步 时抛出。