如果没有数据,如何避免插入mongoDB。因为每次我使用insert命令都会创建没有数据的_id。 示例:db.collection_name.insert({}) 正在文档中创建_id。如何避免它。
答案 0 :(得分:0)
您可以使用mongoose ORM并定义验证器,如:
var UserSchema = new Schema({
name: { type: String, required: true }
});
这将生成如下所示的错误消息:
名称:
{ message: 'Validator "required" failed for path name',
name: 'ValidatorError',
path: 'name',
type: 'required' } }
答案 1 :(得分:0)
MongoDB 3.2集成了架构验证。 所以你可以检查是否存在“name”属性,如果没有,则验证失败,然后根本不插入Document。
https://docs.mongodb.com/v3.2/core/document-validation/
db.createCollection( "contacts",
{ validator: { $or:
[
{ phone: { $type: "string" } },
{ email: { $regex: /@mongodb\.com$/ } },
{ status: { $in: [ "Unknown", "Incomplete" ] } }
]
}
} )