模型稍后更改时Django数据迁移出现问题

模型稍后更改时Django数据迁移出现问题,django,django-models,django-migrations,Django,Django Models,Django Migrations,假设我有一个Django模型,看起来像这样: class MyEntity(models.Model): my_first_attribute = models.CharField(max_length=50) 我创建了一个在MyEntity模型中插入一些值的数据迁移 然后我创建一个模式迁移,添加另一个属性“my_second_attribute” 如果在新数据库上运行./migrate.py,则运行数据迁移会失败,Django会抱怨myentity.my_second_属性不存在 是

假设我有一个Django模型,看起来像这样:

class MyEntity(models.Model):
    my_first_attribute = models.CharField(max_length=50)
我创建了一个在MyEntity模型中插入一些值的数据迁移

然后我创建一个模式迁移,添加另一个属性“my_second_attribute”

如果在新数据库上运行./migrate.py,则运行数据迁移会失败,Django会抱怨myentity.my_second_属性不存在

是否有解决方案?

请确保您的函数执行以下操作:

Person = apps.get_model("yourappname", "Person")
而不是使用这个:

from yourappname.models import Person
前者将采用先前模式迁移定义的数据库模式和模型(如
migration.dependencies
中所述)


后者将使用的当前源可能远远超过迁移文件已知的状态。

是否运行了
/manage.py makemigrations
,然后运行了
/manage.py migrate