TimeField — Django Modelleri

| | | | | | | | | | | | | | | | | | | | |
sınıf TimeField (auto_now = False, auto_now_add = False, ** seçenekler) Python datetime.time nesnesi tarafından temsil edilen saat. DateField ile aynı argümanları kabul eder. Form, bir TextInput widget`ı kullanır. Yönetici arayüzü ayrıca biraz JavaScript kullanır.

Yalnızca zaman istiyorsanız, TimeField budur ihtiyacınız olan:

class ConversationHistory(models.Model): contact_date = models.DateField(_(u"Konuşma Tarihi"), boş=True) contact_time = models.TimeField(_(u"Konuşma Süresi"), boş=True) 

auto_now_add seçeneğinden yararlanabilirsiniz:

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

Python`da bir datetime.time örneğiyle temsil edilen bir zaman. DateField ile aynı otomatik doldurma seçeneklerini kabul eder.

auto_now_add kullanırsanız, nesne ilk oluşturulduğunda alanı otomatik olarak şimdi olarak ayarlar.

sınıf ConversationHistory(models.Model): contact_date = models.DateField(_(u"Konuşma Tarihi"), auto_now_add=True, boş=True) contact_time = models.TimeField(_(u"Konuşma) Zaman"), auto_now_add=Doğru, boş=Doğru)  pre> TimeField, Python`da bir datetime.time örneğiyle temsil edilen, zamanı depolayan bir zaman alanıdır. Adından da anlaşılacağı gibi, bu alan python`da oluşturulan bir datetime nesnesini saklamak için kullanılır. Bu alan için varsayılan form pencere öğesi bir TextInput`tur. Yönetici, JavaScript kısayollarıyla iki ayrı TextInput pencere aracı kullanır. 

Sözdizimi

field_name = models.TimeField(auto_now=False, auto_now_add=False, **options) TimeField aşağıdaki ekstra isteğe bağlı bağımsız değişkenlere sahiptir ‚Äì TimeField.auto_now 
Alanı otomatik olarak şimdi nesne her kaydedildiğinde. "Son değiştirilen" zaman damgaları için kullanışlıdır. Geçerli saatin her zaman kullanıldığını unutmayın; bu yalnızca geçersiz kılabileceğiniz varsayılan bir değer değildir. Alan yalnızca Model.save() çağrılırken otomatik olarak güncellenir. Alan güncellenmez QuerySet.update() gibi başka yollarla diğer alanlarda güncellemeler yaparken, ancak bunun gibi bir güncellemede alan için özel bir değer belirtebilirsiniz.

TimeField.auto_now_add

nesne ilk oluşturulur.Zaman damgaları oluşturmak için kullanışlıdır.Şu anki saatin her zaman kullanıldığını unutmayın;bu sadece geçersiz kılabileceğiniz varsayılan bir değer değildir.Dolayısıyla, nesneyi oluştururken bu alan için bir değer ayarlasanız bile, Bu alanı değiştirebilmek istiyorsanız, auto_now_add=True yerine aşağıdakini ayarlayın:
  • TimeField için: default=datetime.time.now ‚Äì from datetime.now()
  • TimeField için: default=timezone.now ‚Äì from Django.utils.timezone.now()
Not: auto_now_add, auto_now, ve varsayılan birbirini dışlar. Bu seçeneklerin herhangi bir kombinasyonu bir hataya neden olacaktır.

Alan seçenekleri

Alan parametreleri, bir tür kısıtlama uygulamak veya belirli bir alana belirli bir özelliği iletmek için her alana verilen argümanlardır. Örneğin, TimeField`e null = True bağımsız değişkeninin eklenmesi, bu tablo için ilişkisel bir veritabanında boş değerler ‚Äã‚Äã depolamasına olanak tanır.
TimeField`in yapabileceği alan parametreleri ve nitelikleri şunlardır: kullanın.

Alan Seçenekleri Açıklama
Boş Doğruysa , Django veritabanında NULL olarak boş değerleri saklayacaktır. Varsayılan Yanlış`tır.
Boş Doğru ise, alanın boş olmasına izin verilir. ... Varsayılan Yanlış`tır.
Seçenekler 2 demetten oluşan yinelenebilir (örneğin bir liste veya demet) Bu alan için seçenekler olarak kullanmak için.
Varsayılan Alanın varsayılan değeri. Bu bir değer veya çağrılabilir bir nesne olabilir. Çağrılabilirse, her yeni nesne oluşturulduğunda çağrılır.
help_text Form widget`ı ile görüntülenecek ekstra "yardım" metni. Alanınız bir
birincil_anahtar Doğruysa, bu alan modelin birincil anahtarıdır.
Benzersiz Doğruysa, bu alan tablo genelinde benzersiz olmalıdır.