gpt4 book ai didi

python - Django 1.7(显然)没有在manage.py测试上运行迁移

转载 作者:太空宇宙 更新时间:2023-11-03 18:03:33 25 4
gpt4 key购买 nike

在处理 Django 1.7 项目时,我需要向现有模型添加一个字段。

我添加了以下内容:bairro = models.CharField(max_length=200)

然后我运行了这两个命令:

python manage.py makemigrations
python manage.py migrate

现在,测试将不再运行。每当我运行 python manage.py test 时,都会出现以下错误:

django.db.utils.ProgrammingError: column admin_starbeli_salao.bairro does not exist

这很奇怪,因为如果我打开外壳,我可以添加对象并且该字段确实可以工作。

我能做什么?

最佳答案

这是其中一次迁移中出现的问题。

为了找到它是什么,我删除了数据库并尝试运行 python manage.py migrate,但出现了相同的错误。
然后我注意到相关模型对此模型有一个默认值,如下所示:

def first_my_model():
return MyModel.objects.first().pk if MyModel.objects.first() else 0

它试图在此调用中使用新添加的(并且尚未存在于数据库中)字段,从而引发错误。

关于python - Django 1.7(显然)没有在manage.py测试上运行迁移,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27298286/

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