在
https://docs.djangoproject.com/en/1.8/ref/models/fields/#django.db.models.Field.default
我们读到每次创建新对象时都会调用默认字段值的可调用值。
在我的模特中,我有:
when_first_upload = models.DateTimeField(default=datetime.datetime.now())
在管理页面中,我创建一个新对象,我总是得到相同的 datetime,就好像没有调用callable一样。有什么想法吗?
就好像在某处缓存某些内容并保持对callable的最后一次调用。
当我进行迁移时,它会重置,但在添加新对象时保持不变 直到下一次迁移。
答案 0 :(得分:0)
尝试:
when_first_upload = models.DateTimeField(default=datetime.datetime.now)
你需要自己调用它,而不是它返回的结果。