gpt4 book ai didi

python - Django:没有默认值的不可空字段

转载 作者:行者123 更新时间:2023-12-05 01:44:26 25 4
gpt4 key购买 nike

在 Django 中,我对以下 models.py 文件使用 manage.py makemigrationsmanage.py migrate:

class Family(models.Model):
comment1 = models.CharField(max_length=80)
#comment2 = models.CharField(max_length=80)

成功初始化后,我将 models.py 更改为(我只是取消注释新模型字段,它基本上是另一个模型字段的副本):

class Family(models.Model):
comment1 = models.CharField(max_length=80)
comment2 = models.CharField(max_length=80)

现在,当我再次尝试 makemigrations 时,出现以下错误:

You are trying to add a non-nullable field 'comment' to family without a default; we can't do that (the database needs something to populate existing rows).

Please select a fix:

1) Provide a one-off default now (will be set on all existing rows with a null value for this column)

2) Quit, and let me add a default in models.py Select an option:

为什么我一开始在初始化时没有收到此错误?

最佳答案

其他人是对的。您应该为该字段设置默认值。但是有一个技巧可以解决这个问题。但这不是一个好方法......除非你别无选择。
1.评论你所有的表格
2. 运行makemigrationsmigrate
3.取消注释你的表
4.2.再次运行 makemigrationsmigrate

关于python - Django:没有默认值的不可空字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46055302/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com