Sei sulla pagina 1di 1

Le Chiavi Primarie autoincrementali del Model in Django Parte 3

http://www.darioagliottone.it/model-django-parte-3/

Django: il Model Parte 3 - le Chiavi Primarie


Campi di chiave primaria autoincrementali
Per impostazione di default, Django d a ogni modello il seguente campo: id = models.AutoField(primary_key=True) Si tratta di chiave primaria autoincrementata. Se si vuole specificare una chiave primaria personalizzata, basta specificare primary_key = True sul campo che si vuole far diventare chiave primaria. Quando si imposta esplicitamente Field.primary_key a un campo. Django non aggiunge la colonna id. Tutti i modelli devono avere un campo con primary_key = True .

I nomi dei campi dettagliati


Ogni tipo di campo, fatta eccezione per ForeignKey ,ManyToManyField e OneToOneField ,ha come primo argomento facoltativo - un verbose name. Se non specificato Django lo creer automaticamente usando il nome dellattributo del campo, convertendo i trattini bassi come spazi In questo esempio, il verbose name persons first name : first_name = models.CharField("person's first name", max_length=30) In questo esempio, il nome verbose first name : first_name = models.CharField(max_length=30) ForeignKey , ManyToManyField e OneToOneField richiedono che il primo argomento sia un model, per questo motivo il verbose_name va specificato in maniera esplicita cos: poll = models.ForeignKey(Poll, verbose_name="the related poll") sites = models.ManyToManyField(Site, verbose_name="list of sites") place = models.OneToOneField(Place, verbose_name="related place") La convenzione di non scrivere in maiuscolo la prima lettera del verbose_name . Django lo far automaticamente per default.

Per la reference ufficiale in inglese consultare Automatic Primary key fields

1 di 1

18/05/12 13.53

Potrebbero piacerti anche