Django ModelForm和datetimefield:没有小部件

时间:2010-09-13 12:23:23

标签: django django-forms

我尝试显示包含日期时间字段的模型。

但是当我尝试显示此字段时,没有任何内容出现。

在模型表单中,当我打印self.fields时:

{'status': <django.forms.fields.TypedChoiceField object at 0x1340e10>, 'reserved': <django.forms.fields.BooleanField object at 0x1340cd0>, 'date_publication': None, 'date_creation': None}

以下是模型:

class News(MultiLangModel):
 date_creation = models.DateTimeField(auto_now_add=True, verbose_name=_("Date"))
 date_publication = models.DateTimeField(auto_now_add=True, verbose_name=_("Publication date"))
 status        = models.CharField(max_length=10,         verbose_name=_("Status"), choices=POST_STATUS_CHOICES)
 reserved   = models.BooleanField(default=False, verbose_name=_(u"News reserved to supporters"))

这个错误的原因是什么?

1 个答案:

答案 0 :(得分:3)

您已为auto_now_addTrue属性设置为date_publication。这意味着此字段的值将自动设置为 ,而不是来自用户输入。要验证此操作,请删除auto_now_add属性,然后重试。

来自auto_now_add的{​​{3}}:

  

首次创建对象时自动将字段设置为现在。用于创建时间戳。请注意,当前日期始终使用;它不仅仅是您可以覆盖的默认值。