Una volta creata la nostra applicazione creiamo il modello del database che vogliamo utilizzare per memorizzare i contatti.
Il nostro database rubrica
avrà uno schema ER molto semplice, come quello in figura:
Le relative tabelle avranno gli attributi:
Tabella | Attributi |
---|---|
Contatto | nome cognome occupazione |
Telefono | numero |
Tipologia | descrizione |
Definiamo le tabelle del nostro database in rubrica/models.py
:
class Tipologia(models.Model): descrizione = models.CharField(max_length=255) class Contatto(models.Model): nome = models.CharField(max_length=255) cognome = models.CharField(max_length=255) occupazione = models.CharField(max_length=255) class Telefono(models.Model): tipologia = models.ForeignKey(Tipologia) contatto = models.ForeignKey(Contatto) numero = models.CharField(max_length=20)
Attiviamo ora l'applicazione rubrica
aggiungendo primoprogetto.rubrica
nella variabile INSTALLED_APPS
in primoprogetto/settings.py
.
Per applicare il modello appena definito, cioé costruire la struttura del database, eseguiamo il comando
manage.py syncdb
Ora popoliamo la tabella rubrica_tipologia
, apriamo una shell Django mediante il comando
manage.py shell
ed aggiungiamo degli oggetti Tipologia
utilizzando le API Django:
from primoprogetto.rubrica.models import Tipologia casa = Tipologia(descrizione='Casa') cellulare = Tipologia(descrizione='Cellulare') ufficio = Tipologia(descrizione='Ufficio') casa.save() cellulare.save() ufficio.save()
alternativamente possiamo utilizzare un client MySQL ed eseguire i seguenti comandi:
mysql> use rubrica; mysql> insert into rubrica_tipologia(descrizione) values('Casa'),('Cellulare'),('Ufficio');
In ogni caso possiamo verificare l'inserimento:
mysql> select * from rubrica_tipologia; +----+-------------+ | id | descrizione | +----+-------------+ | 1 | Casa | | 2 | Cellulare | | 3 | Ufficio | +----+-------------+