mongodb - 如何使用 Mongodb 验证器验证非空字段
问题描述
我有一个带有架构的集合:
{
"name": "Jhon",
"lname": "Doe",
"status": "Accepted"
}
我想向这个集合添加一个验证,这样,每当在其中添加任何新文档时,status
该文档的字段都不应该为空。
我尝试使用$jsonSchema
验证器:
db.createCollection("users", {
validator: {
$jsonSchema: {
bsonType: "object",
required: [ "name", "status"],
properties: {
name: {
bsonType: "string"
},
lname: {
bsonType: "string"
},
status: {
bsonType: "string"
}
}
}
}
})
但是,这个模式接受文件:
db.users.insert({'name':'abc','status':''})
如何status
使用 mongodb 验证器验证该字段不为空?
解决方案
我想到了。
我使用了正则表达式。
db.createCollection("users", {
validator: {
$jsonSchema: {
bsonType: "object",
required: [ "name", "status"],
properties: {
name: {
bsonType: "string"
},
lname: {
bsonType: "string"
},
status: {
bsonType: "string",
pattern : "^[A-Za-z]+$",
}
}
}
}
})
推荐阅读
- javascript - 如何使用 Javascript 每天在特定时间重新加载 URL?
- python - 在 Tesseract 中保留空间
- python - 将字符串拆分为两个单词的列表,重复最后一个单词
- json - 使用 scala 将 JSON 平面嵌套到标题级别
- sql - 在 SQL 中创建使用联合选择的视图或函数
- aws-lambda - Alexa:我们可以在 lambda 函数中访问用户的实际语音输入吗?
- git - 在特定文件上运行 gradlew lint
- html - 使用引导程序和 CSS 在背景图像上定位搜索栏和按钮
- android - 在列表视图中单击组标题时出错
- json - 如何在 golang 中轻松编辑 JSON 类型(如 Node.js)