my models.py:
class Attendancename(models.Model):
teacher_name = models.ForeignKey(Teachername)
date = models.DateField('Date')
intime = models.TimeField('IN-TIME')
outtime = models.TimeField('OUT-TIME')
hours = models.TimeField('Working Hours')
def __str__(self):
return "%s" %self.teacher_name
我正在使用Windows-7,我添加了一个名为hours
的字段,然后在进行迁移时django要求我提供一次性默认值,我提供'0'
。之后我尝试迁移我的更改然后它给了我上面的追溯(我无法复制整个追溯)。
我已经尝试删除该字段并重新插入,但django一次又一次地提示我同样的错误。任何人都可以告诉我如何解决它?
我删除了我的迁移文件,之后我运行了命令 - 'python manage.py makemigrations'
和'python manage.py migrate'
,但无论如何它都没有效果。我也用'syncdb'
。请提供一些解决方案。
答案 0 :(得分:0)
打开数据库,然后打开 django_migrations 表,删除包含迁移名称的行,并在此行之后,再重新创建迁移并设置有效值。
注意:您可以在创建默认值之前设置默认值,如下所示:
class Attendancename(models.Model):
teacher_name = models.ForeignKey(Teachername)
date = models.DateField('Date', auto_now=True)
intime = models.TimeField('IN-TIME', default=datetime.time(0))
outtime = models.TimeField('OUT-TIME', default=datetime.time(0))
hours = models.TimeField('Working Hours', default=datetime.time(0))
def __str__(self):
return "%s" %self.teacher_name