我还在寻找其他问题,但它们只是不同的错误。
我一直在开发一个简单的论坛应用程序,现在我已经到了可以评论主题的部分了。但后来我意识到,我在评论中遗漏了与主题的ForeignKey关系。然后,我创建了一个新的ForeignKey,但像往常一样,它要求我提供一个默认值。我正要添加Blank和Null true,但是我的手自动地将asd作为默认值。现在,即使我成功地使用makemigrations进行了迁移,但我在创建migrate时遇到了这个错误,我如何才能使其正确?
发布于 2020-08-25 03:43:07
您需要编辑makemigration后创建的迁移文件。迁移文件中有该字段。
例如:
field=models.ForeignKey(default="asd")您应该编辑此部分,然后重新运行migrate
发布于 2020-08-25 18:47:54
ForeignKey是表中的一行,在某种程度上它是整数的子集。因此,如果您在向一个模型插入数据(没有默认值和空值)之后向该模型添加ForeignKey,它将询问您希望如何添加在表数据中不为null的行,并且因为该字段是整数类型,所以您应该在该字段中输入一个有效的整数(不是字符串或任何其他类型)。请注意,您将作为默认值输入的整数应该是一个有效的选择(即,将该整数作为主键的topic记录或您想要将ForeignKey连接到它的相关表的主键已经存在),如果不是这样,您就不能运行migrate,因为这一次Django将引发IntegrityError。
https://stackoverflow.com/questions/63567512
复制相似问题