Una volta definiti i modelli, Django ci permette di eseguire le più comuni query e operazioni sui dati quindi:
- creare, cancellare e modificare oggetti
- memorizzare oggetti
- effettuare ricerche
Esaminiamo le diverse operazioni utilizzando come esempio i modelli Cellulare
e Marca
definiti precedentemente.
Iniziamo creando un Cellulare
:
marca = Marca(descrizione="Nokia") cellulare = Cellulare(marca=marca,modello="6680")
Salviamo l'oggetto con save
:
cellulare.save()
Controlliamo che è stato memorizzato:
Cellulare.objects.all()
che dovrebbe restituire:
[<Cellulare: Cellulare object>]
Per cercare un cellulare avente modello "N95" utilizziamo filter
:
Cellulare.objects.filter(modello="N95")
che restituisce un array di oggetti Cellulare
che soddisfano la condizione indicata facendo le join tra le tabelle correlate:
cell=Cellulare.objects.filter(modello="6680") print cell.marca.descrizione
il risultato è:
u'Nokia'
Possiamo modificare il modello del cellulare:
cell.modello="8310"
Le modifiche non vengono applicate al database se non viene invocato il metodo save
che rende permanente la modifica dell'oggetto:
cell.save()
Questa API può essere utilizzata, come vedremo nei capitoli successivi, nelle views (che rapprentano lo ricordiamo il controller dell'applicazione) per recuperare i dati da visualizzare (tramite template) o per inserire/modificare i dati inviati mediante form.