SchemaBuffer


SchemaBuffer()

参数
  • key «字符串»
  • options «对象»
继承

Buffer SchemaType 构造函数


SchemaBuffer.checkRequired()

参数
  • fn «函数»
返回值
  • «函数»
类型
  • «属性»

覆盖必需验证器用来检查字符串是否通过必需检查的函数。

示例

// Allow empty strings to pass `required` check
mongoose.Schema.Types.String.checkRequired(v => v != null);

const M = mongoose.model({ buf: { type: Buffer, required: true } });
new M({ buf: Buffer.from('') }).validateSync(); // validation passes!

SchemaBuffer.get()

参数
  • getter «函数»
返回值
  • «this»
类型
  • «属性»

为所有 Buffer 实例附加 getter

示例

// Always convert to string when getting an ObjectId
mongoose.Schema.Types.Buffer.get(v => v.toString('hex'));

const Model = mongoose.model('Test', new Schema({ buf: Buffer } }));
typeof (new Model({ buf: Buffer.fromString('hello') }).buf); // 'string'

SchemaBuffer.prototype.checkRequired()

参数
  • value «任何»
  • doc «文档»
返回值
  • «布尔值»

检查给定值是否满足必需验证器。为了满足必需验证器,缓冲区必须不为 null 或 undefined 且长度不为零。


SchemaBuffer.prototype.subtype()

参数
  • subtype «数字» 默认子类型

返回值
  • «SchemaType» this

设置此缓冲区的默认子类型。 你可以在这里找到允许的子类型列表

示例

const s = new Schema({ uuid: { type: Buffer, subtype: 4 });
const M = db.model('M', s);
const m = new M({ uuid: 'test string' });
m.uuid._subtype; // 4

SchemaBuffer.schemaName

类型
  • «属性»

此模式类型的名称,用于防御混淆函数名称的缩小器。


SchemaBuffer.set()

参数
  • option «字符串» 您想设置值的选项

  • value «任何» 选项的值

返回值
  • «未定义,void»
类型
  • «属性»

为所有 Buffer 实例设置默认选项。

示例

// Make all buffers have `required` of true by default.
mongoose.Schema.Buffer.set('required', true);

const User = mongoose.model('User', new Schema({ test: Buffer }));
new User({ }).validateSync().errors.test.message; // Path `test` is required.