Modelli TimeField — Django

| | |
class TimeField (auto_now = False, auto_now_add = False, ** opzioni) Ora, rappresentata da un oggetto Python datetime.time. Accetta gli stessi argomenti di DateField. Il modulo utilizza un widget TextInput. Anche l`interfaccia di amministrazione utilizza un po` di JavaScript.

Se vuoi solo tempo, TimeField è ciò che hai bisogno di:

class Cronologia conversazioni(models.Model): contact_date = models.DateField(_(u"Data conversazione"), blank=Vero) contact_time = models.TimeField(_(u"Tempo di conversazione"), blank=Vero) 

Puoi sfruttare l`opzione auto_now_add:

class TimeField([auto_now=False, auto_now_add=False, **opzioni])

Un`ora, rappresentata in Python da un`istanza datetime.time. Accetta le stesse opzioni di compilazione automatica di DateField.

Se utilizzi auto_now_add, imposterà automaticamente il campo su now quando l`oggetto viene creato per la prima volta.

class Cronologia conversazioni(models.Model): contact_date = models.DateField(_(u"Data conversazione"), auto_now_add=Vero, blank=Vero) contact_time = models.TimeField(_(u"Conversazione Time"), auto_now_add=Vero, blank=Vero) 
TimeField è un campo temporale che memorizza il tempo, rappresentato in Python da un`istanza datetime.time. Come suggerisce il nome, questo campo viene utilizzato per memorizzare un oggetto datetime creato in Python. Il widget modulo predefinito per questo campo è un TextInput. L`amministratore utilizza due widget TextInput separati con scorciatoie JavaScript.

Sintassi

nome_campo = models.TimeField(auto_now=False, auto_now_add=False, **opzioni) TimeField ha i seguenti argomenti opzionali aggiuntivi – TimeField.auto_now 
Imposta automaticamente il campo su ora ogni volta che l`oggetto viene salvato. Utile per i timestamp "ultima modifica". Nota che l`ora corrente viene sempre utilizzata; non è solo un valore predefinito che puoi sovrascrivere. Il campo viene aggiornato automaticamente solo quando si chiama Model.save(). Il campo non viene aggiornato quando si apportano aggiornamenti ad altri campi in altri modi come QuerySet.update(), anche se è possibile specificare un valore personalizzato per il campo in un aggiornamento del genere.

TimeField.auto_now_add

Imposta automaticamente il campo su adesso quando l`oggetto viene prima creato. Utile per la creazione di timestamp. Tieni presente che l`ora corrente viene sempre utilizzata; non è solo un valore predefinito che puoi sovrascrivere. Quindi, anche se imposti un valore per questo campo durante la creazione dell`oggetto, sarà ignorato. Se vuoi essere in grado di modificare questo campo, imposta quanto segue invece di auto_now_add=True:
  • Per TimeField: default=datetime.time.now ‚Äì from datetime.now()
  • Per TimeField: default=timezone.now ‚Äì da django.utils.timezone.now()
Nota: le opzioni auto_now_add, auto_now, e default si escludono a vicenda. Qualsiasi combinazione di queste opzioni risulterà in un errore.

Opzioni campo

I parametri campo sono argomenti dati a ciascun campo per applicare un qualche tipo di vincolo o passare una caratteristica specifica a un campo specifico. Ad esempio, l`aggiunta dell`argomento null = True a TimeField consentirà di memorizzare valori vuoti ‚Äã‚Äãper quella tabella in un database relazionale.
Ecco i parametri di campo e gli attributi che TimeField può usa.

Opzioni campo Descrizione
Null Se Vero , Django memorizzerà i valori vuoti ‚Äã‚Äã come NULL nel database. L`impostazione predefinita è Falso.
Vuoto Se Vero , il campo può essere vuoto ... L`impostazione predefinita è False.
Scelte Un iterabile (ad esempio una lista o una tupla) di 2 tuple da utilizzare come scelte per questo campo.
Predefinito Il valore predefinito per il campo. Può essere un valore o un oggetto richiamabile. Se richiamabile verrà chiamato ogni volta che viene creato un nuovo oggetto.
help_text Testo "help‚" extra da visualizzare con il widget del modulo. È utile per la documentazione anche se il tuo campo non è utilizzato su un form.
primary_key Se True, questo campo è la chiave primaria per il modello .
Univoco Se True, questo campo deve essere univoco in tutta la tabella.