【发布时间】:2018-10-27 06:58:52
【问题描述】:
我无法弄清楚如何做我想做的事(不必在创建对象时设置日期时间)并解决此错误。
Django 1.11,Python 3.6。我目前正在从 Django 1.8 升级。
运行 python manage.py migrate 时出现问题
File "C:\Dev\Python36\lib\site-packages\django\db\models\fields
\__init__.py", line 1423, in to_python
params={'value': value},
django.core.exceptions.ValidationError: ["Value '' has an invalid date
format. Must be in the format YYYY-MM-DD HH:MM[:ss[.uuuuuu]][TZ]."]
我以前的 models.py(在 Django 1.8 中)
timeToServe = models.DateTimeField(default='', null=True, blank=True,
verbose_name=get_lang(None, 'time_to_serve'))
我当前的 models.py(在 Django 1.11 中)
timeToServe = models.DateTimeField(default=None,
null=True, blank=True,
auto_now=False, auto_now_add=False,
verbose_name=get_lang(None, 'time_to_serve'))
我之前的迁移文件(在 Django 1.8 中)
('timeToServe', models.DateTimeField(default='', blank=True, verbose_name='Serveringstid', null=True)),
我当前的迁移 (0021_auto_xxxx.py)(在 Django 1.11 中)
operations = [
migrations.AlterField(
model_name='booking',
name='timeToServe',
field=models.DateTimeField(
default=None, blank=True, null=True, verbose_name='time'),
),
【问题讨论】:
-
这个模型字段的先前版本是
CharField,也许? -
字段以前不是 CharField。
-
timeToServe模型是否存在任何对象? -
在迁移文件中,我们实际上可以看到
migrations.AlterField,这意味着该字段有一些先前的参数,那么它们是什么? -
是的,数据库中有对象。
标签: django datetime migration field validationerror