使用Django 1.7,每当我执行makemigrations
时,我都会对其中一个模型进行更改:
(venv) >> python manage.py makemigrations myapp
Migrations for 'myapp':
0005_auto_20141206_1129.py:
- Alter field date on observation
这是由于我的Observation类使用datetime.today()
:
class Observation(model.Models):
date = models.DateField(default=datetime.datetime.today())
是否有一种简单的方法可以避免为此创建迁移文件,但同时在创建观察时保持默认值today()
?
答案 0 :(得分:5)
问题是每次运行此代码时,默认值都会更改为today()
的当前值。那是因为你实际上是调用函数而不是将它作为可调用函数传递。只需留下尾随()
,你应该没事。
(请注意,您应该使用datetime.date.today
,因为您需要date
值,而不是datetime
值。)