Creare righe
Fa parte della sezione Modelli e pannello di amministrazione del percorso Django di Coddy. Lezione 7 di 23.
Alla tua libreria servono nuovi libri e non scriverai mai SQL, il linguaggio parlato dai database. Ogni modello ha Book.objects, il suo manager: i suoi metodi leggono e scrivono nella tabella. L’ORM di Django (mappatore oggetto-relazionale) trasforma queste chiamate in SQL. In questo capitolo scriverai codice ORM in explore.py. Esegui aggiunge nove libri, poi esegue il file come farebbe python manage.py shell < explore.py, e ciò che stampa viene mostrato nella Console.
Book.objects.create(title="Beloved", author="Toni Morrison", year=1987, price="13.00")create() crea una riga e la salva in un solo passaggio; un campo che ometti assume il suo valore predefinito. Lo stesso in due passaggi, con una modifica nel mezzo:
silmarillion = Book(title="The Silmarillion", author="J.R.R. Tolkien", year=1977, price="10.50")
silmarillion.is_read = True
silmarillion.save()Finché non viene eseguito save(), l’oggetto esiste solo in Python e il suo id è None.
Sfida
FacileIn explore.py, sopra print, aggiungi due libri.
- Con
create():Project Hail MarydiAndy Weir, anno2021, prezzo12.99, fantascienza. Memorizza il valore del genere,scifi, non la sua etichetta; prendilo dalla tua classeGenre. - Creando un
Booke chiamandosave():Klara and the SundiKazuo Ishiguro, anno2021, prezzo11.50.
Premi «Esegui»: la Console mostra 11 books on the shelf.
Provalo tu
from books.models import Book
# Aggiungi qui i due libri.
print(Book.objects.count(), "books on the shelf")
Tutte le lezioni di Modelli e pannello di amministrazione
2Interrogare con l’ORM
Creare righeTutti e OttieniFiltri e ricercheContare le righeOrdinare le righeAggiornare ed eliminareEsercitati da solo: Playground Django