Python 如何使用Django DateTimeField';违约
我正在尝试使用Python 如何使用Django DateTimeField';违约,python,database,django,django-models,default,Python,Database,Django,Django Models,Default,我正在尝试使用datetime.datetime.now作为我的pub\u date列的默认值,但不断出现错误 DatabaseError:(1054,“字段列表”中的未知列“archive\u app.pub\u date”) 我只是在python manage.py shell中测试我的代码,所以我在获取错误时使用的行就是App.objects.all() 这是我的应用程序型号代码 import datetime from django.db import models class App
datetime.datetime.now
作为我的pub\u date
列的默认值,但不断出现错误
DatabaseError:(1054,“字段列表”中的未知列“archive\u app.pub\u date”)
我只是在python manage.py shell
中测试我的代码,所以我在获取错误时使用的行就是App.objects.all()
这是我的应用程序型号代码
import datetime
from django.db import models
class App(models.Model):
title = models.CharField(max_length=200)
votes = models.IntegerField(default=0)
pub_date = models.DateTimeField('pub date', default=datetime.datetime.now)
当您运行
syncdb
时,是否在App
上定义了pub\u date
如果您在syncdb之后添加了它,那么您是否创建并运行了迁移?您是否运行了
syncdb
或使用了更新的架构?据我所知,您的默认设置没有问题,但您的数据库抱怨表中没有此类列。是的,在我的代码中添加发布日期后,我运行了python manage.py syncdb
我的意思是,您首先只有两个字段title
和投票
,然后运行了syncdb。在同步之后,您随后添加了pub_date
?在这种情况下,您需要运行迁移将第三列pub_date
添加到表中<代码>同步数据库无法执行此任务syncdb
仅读取models.py
并查看是否存在某个不存在表的模型,然后在这种情况下创建表syncdb
不会为您更改表。您需要使用south
进行迁移。