Integrierte Schemavalidierung in MongoDB
Auch wenn MongoDB ein flexibles Schema hat, bringt es umfangreiche Funktionen zur Schemavalidierung mit. Beim Erstellen einer Collection kannst du ein JSON Schema angeben, das beschreibt, welchem Format Dokumente folgen sollen.
Hinweis: Wir verwenden hier einen zufällig generierten Collection-Namen, damit du mit mehreren Einsendungen frei experimentieren kannst.
Diese Übung ist Teil des Kurses
<Kurs>Einführung in MongoDB mit Python</Kurs>Übungsanweisungen
- Passe den Aufruf von
.create_collection() an:titlesoll ein"string"sein. - Füge den Film in deine neu erstellte Movies-Collection
movein. - Prüfe das Ergebnis des Einfügens, um sicherzustellen, dass es erfolgreich war.
Interaktive praktische Übung
Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.
# 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(____)