迁移时在Django中出现错误

时间:2020-05-16 15:44:04

标签: python django python-3.x django-models django-forms

from django.db import models
class Note(models.Model):
    subject=models.CharField(max_length = 100)

    My_Thought= models.TextField(blank = False)

在迁移时,执行此命令时出现以下错误:

python manage.py makemigrations

您正在尝试添加一个不可为空的字段'id'进行注释,而没有默认值;我们无法做到这一点(数据库需要一些东西来填充现有行)。 请选择一个修复程序: 1)现在提供一次性的默认设置(将在所有现有行上设置此列的值为空) 2)退出,然后让我在models.py中添加默认值 选择一个选项:

您知道我没有添加id,因为它是django自动生成的,那我为什么要得到它?

2 个答案:

答案 0 :(得分:0)

您的代码有效,问题不在这里,我只是尝试在一个空应用程序中创建模型,而且效果很好!

答案 1 :(得分:0)

当Django尝试修改现有模型以使其需要数据时,就会发生这种情况。

只需将代码更改为:

from django.db import models

class Note(models.Model):
    subject=models.CharField(max_length = 100, default="something or leave empty")

    My_Thought= models.TextField(blank = False, default="")

如果错误不是来自此片段,则可能是您有另一个模型引发了此错误。