验证 MongoDB 中数组项的类型

Mat*_*att 0 validation mongodb bson

我正在使用 MongoDB 4.0。

我的集合中的文档可以有一个numbers包含整数数组的字段。我们可以numbers使用以下代码验证它确实是一个数组,但是否可以确保它们是整数?

properties: {
  numbers: {
    bsonType: 'array'
  }
 }
Run Code Online (Sandbox Code Playgroud)

我查看了验证文档BSON 类型文档,但其中任何一个都没有说明任何内容。一个示例显示了括在方括号 ( ["double"])中的字段,但该类型并未描述为数组,并且添加方括号似乎没有任何效果。

小智 5

似乎还有另一个属性 ,items您可以在其中为数组中的项目定义方案

properties: {
  numbers: {
    bsonType: 'array'
    items: {
      bsonType: 'int'
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

这个属性似乎来自 mongo 3.6