SORU
7 AĞUSTOS 2010, CUMARTESİ


Otomatik oluşturma django model form nesneleri için tarih?

Ne bir nesne için bir oluşturulma tarihi otomatik olarak ayarlamak için en iyi yolu, ve aynı zamanda nesnenin en son ne zaman güncellendiğini kayıt edecek bir alan?

Benim modelde var:

created_at = models.DateTimeField(False, True, editable=False)
updated_at = models.DateTimeField(True, True, editable=False)

ve benim görüşüm:

if request.method == 'POST':
    form = MyForm(request.POST)
    if form.is_valid():
        obj = form.save(commit=False)
        obj.user = request.user
        obj.save()
        return HttpResponseRedirect('obj_list')

Hata alıyorum:

objects_object.created_at may not be NULL

Bu değeri el ile ayarlamak için kendim mi yapmalıyım? Sandım noktası parametrelerini geçirilen DateTimeFields (ya da onlar sadece varsayılanları, ve o zamandan beri ben kurdum 'düzenlenebilir=False' değiller, görüntülenen form üzerinde, bu yüzden sakın teslim isteği, ve bu nedenle sakın içine koymak şeklinde mi?).

Bunu yapmanın en iyi yolu nedir? Birınityöntem?

Teşekkürler

ps - ben bir django ve Python çaylak

CEVAP
7 AĞUSTOS 2010, CUMARTESİ


updated_at created_at sırasıyla auto_now auto_now_add seçenekleri kullanabilirsiniz.

class MyModel(models.Model):
    created_at = models.DateTimeField(auto_now_add=True)
    updated_at = models.DateTimeField(auto_now=True)

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Cole Rolland

    Cole Rolland

    23 Kasım 2008
  • Curso Online Gratuito

    Curso Online

    4 Aralık 2011
  • TheFlashCentre

    TheFlashCent

    22 Mayıs 2008