Comme dans MongoDB 3.6.2, la validation du schéma JSON n'ajoute pas automatiquement le _id
par défaut propriété, vous devez donc inclure une règle pour cela lors de l'utilisation de additionalProperties: false
.
Par exemple, en supposant l'ObjectID par défaut :
db.createCollection("claims",
{ validator : {
$jsonSchema : {
bsonType : "object",
properties : {
_id: { bsonType: "objectId" },
airportCode : { bsonType: "string"}
},
additionalProperties: false
}
}}
)
Deux problèmes connexes à voter pour/surveiller sur le suivi des problèmes MongoDB Jira :
- SERVER-32160 :fournit un avertissement lorsque _id ne figure pas dans la liste des propriétés et que additionalProperties est faux
- SERVER-20547 :exposer la raison pour laquelle une opération échoue à la validation du document