Datensätze erstellen
Teil des Abschnitts Modelle und Admin-Bereich der Django-Journey von Coddy. Lektion 7 von 23.
Dein Bücherregal braucht neue Bücher, und du wirst niemals SQL schreiben, die Sprache, die Datenbanken sprechen. Jedes Modell hat Book.objects, seinen Manager: Seine Methoden lesen und schreiben die Tabelle. Djangos ORM (objektrelationaler Mapper) wandelt diese Aufrufe in SQL um. In diesem Kapitel schreibst du ORM-Code in explore.py. „Spielen“ fügt neun Bücher hinzu und führt dann die Datei so aus, wie es python manage.py shell < explore.py tun würde; was dabei ausgegeben wird, erscheint in der Konsole.
Book.objects.create(title="Beloved", author="Toni Morrison", year=1987, price="13.00")create() erstellt einen Datensatz und speichert ihn in einem Schritt; ein Feld, das du weglässt, erhält seinen Standardwert. Dasselbe in zwei Schritten, mit einer Änderung dazwischen:
silmarillion = Book(title="The Silmarillion", author="J.R.R. Tolkien", year=1977, price="10.50")
silmarillion.is_read = True
silmarillion.save()Bis save() ausgeführt wird, lebt das Objekt nur in Python und seine id ist None.
Aufgabe
EinfachFüge in explore.py oberhalb von print zwei Bücher hinzu.
- Mit
create():Project Hail MaryvonAndy Weir, Erscheinungsjahr2021, Preis12.99, Science-Fiction. Speichere den Wert des Genres,scifi, nicht dessen Bezeichnung; verwende dafür deine KlasseGenre. - Erstelle ein
Book-Objekt und rufesave()auf:Klara and the SunvonKazuo Ishiguro, Erscheinungsjahr2021, Preis11.50.
Drücke auf „Spielen“: In der Konsole steht 11 books on the shelf.
Probier es selbst
from books.models import Book
# Füge die beiden Bücher hier hinzu.
print(Book.objects.count(), "books on the shelf")
Alle Lektionen in Modelle und Admin-Bereich
2Abfragen mit dem ORM
Datensätze erstellenAlle und AbrufenFiltern und SuchabfragenDatensätze zählenDatensätze sortierenAktualisieren und LöschenÜbe selbstständig: Django-Playground