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

  • chrmoe

    chrmoe

    7 Kasım 2006
  • hockeywebcasts

    hockeywebcas

    31 EKİM 2012
  • The White House

    The White Ho

    21 Ocak 2006