Validação de esquema nativa do MongoDB
Embora o MongoDB tenha um esquema flexível, ele também vem com ampla funcionalidade para validação de esquema. Ao criar uma coleção, você pode especificar um schema JSON para descrever qual formato os documentos devem seguir.
Observação: estamos usando um nome de coleção gerado aleatoriamente aqui, para que você possa experimentar livremente com várias submissões.
Este exercicio faz parte do curso
Introdução ao MongoDB em Python
Instruções do exercicio
- Adapte a chamada
.create_collection():titledeve ser uma"string". - Insira o filme na nova coleção de filmes,
mov. - Verifique o resultado da inserção para confirmar que deu certo.
exercicio interativo prático
Tente este exercicio completando este código de exemplo.
# Create collection with schema spec
mov = client.film.create_collection(
f"movies_{random.randint(1, 100)}",
validator={
"$jsonSchema": {
"required": ["title", "genre", "release_year", "rating"],
"properties": {
"title": { "bsonType": ____ },
"genre": {
"bsonType": "array",
"items": { "bsonType": "string" }
},
"release_year": { "bsonType": "int" },
"rating": { "bsonType": "double" },
"won_oscar": { "bsonType": "bool" }
}
}
}
)
# Insert movie
res = mov.____({
"title": "the avengers",
"genre": ["action", "adventure", "sci-fi"],
"release_year": 2012,
"rating": 8.0
})
# Print result
print(____)