Validación de esquemas integrada de MongoDB
Aunque MongoDB tiene un esquema flexible, también incluye de serie una amplia funcionalidad para la validación de esquemas. Al crear una colección, puedes especificar un esquema JSON que describa el formato que deben seguir los documentos.
Nota: aquí usamos un nombre de colección generado aleatoriamente, para que puedas experimentar libremente con varios envíos.
Este ejercicio forma parte del curso
Introducción a MongoDB en Python
Instrucciones del ejercicio
- Adapta la llamada a
.create_collection():titledebe ser un"string". - Inserta la película en tu nueva colección de películas,
mov. - Examina el resultado de la inserción para comprobar que se realizó correctamente.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
# 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(____)