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

  • Pál Zoltán Illés

    Pál Zoltán

    30 NİSAN 2007
  • ThePointblank

    ThePointblan

    18 Aralık 2006
  • XxMinayaxX1

    XxMinayaxX1

    9 Mayıs 2012