Como no MongoDB 3.6.2, a validação do esquema JSON não adiciona automaticamente o padrão
_id
propriedade, então você precisa incluir uma regra para isso ao usar additionalProperties: false
. Por exemplo, assumindo o ObjectID padrão:
db.createCollection("claims",
{ validator : {
$jsonSchema : {
bsonType : "object",
properties : {
_id: { bsonType: "objectId" },
airportCode : { bsonType: "string"}
},
additionalProperties: false
}
}}
)
Dois problemas relacionados para votar/assistir no rastreador de problemas do MongoDB Jira:
- SERVER-32160:fornece aviso quando _id não está na lista de propriedades e AdditionalProperties é falso
- SERVER-20547:expõe o motivo pelo qual uma operação falha na validação do documento