2016-08-03 80 views
0

我是Django的新手。這是我遇到的問題。Django,DateTimeField(auto_now_add = True)不起作用

models.py: created_time = models.DateTimeField('Created Time', auto_now_add=True) 當我遷移: migrations error

然後,我默認添加到它: created_time = models.DateTimeField('Created Time', auto_now_add=True, default=timezone.now) 我再次遷移它: migrations error2

因此,有人可以告訴我如何使用DateTimeField和auto_now_add = True?

回答

0

正如錯誤所述,您不能設置auto_now_add=True並同時指定一個默認值。

問題是,Django需要知道數據庫中現有條目使用什麼值。

您可以設置null=True,那麼值將保留爲None

created_time = models.DateTimeField('Created Time', auto_now_add=True, null=True) 

或者,只需刪除默認值,然後再次運行makemigrations。

created_time = models.DateTimeField('Created Time', auto_now_add=True) 

當Django提示時,選擇選項1),以及指定一個缺省(例如timezone.now)。

相關問題