将过去的日期添加到auto_now_add

时间:2019-04-23 10:14:22

标签: python django datetime django-models

我有一个模型,其中有这样的字段

createdDate = models.DateTimeField(auto_now_add=True,blank=True, null=True)

现在我必须用过去的日期填充记录,让我们说像1990-01-01 所以我在做

dt=datetime.datetime.strptime('1990-01-01',"%Y-%m-%d")
Model.objects.create(createdDate=dt)

但是它是当前日期和时间,如何在此字段中添加过去的日期时间?

但是我可以暂时关闭auto_now_add并动态地将其切换回

1 个答案:

答案 0 :(得分:0)

根据docs

  

请注意,始终使用当前日期。它不仅是您可以覆盖的默认值。因此,即使您在创建对象时为此字段设置了一个值,也会将其忽略。

因此,使用auto_now_add代替default

createdDate = models.DateTimeField(default=timezone.now, null=True, blank=True)