我在django模型迁移方面遇到了问题。
我有一些应用程序中的模型,并且已经存在一些数据。
当我在我的应用程序中添加了一些模型并运行
现在的问题是,如果我运行
我不能运行
因此,我正在寻找一种方法来告诉程序:运行迁移,如果表已经存在,则跳过它(
另一个问题是为什么会发生这种情况,即makemigrations无法识别我的更改(可能是一些缓存问题等)?
makemigrations
时,应用程序报告没有更改。
我知道有时候迁移时会出现一些错误,所以我删除了数据库中的django_migrations表并再次运行makemigrations
,现在程序找到了我的新字段。现在的问题是,如果我运行
migrate
,系统会告诉我有一些表已经存在(这是正确的,因为它们确实存在)。我不想删除那些表,因为我已经有数据了。我不能运行
migrate --fake
,因为程序会认为我已经有所有的表,这是不正确的。因此,我正在寻找一种方法来告诉程序:运行迁移,如果表已经存在,则跳过它(
--fake
)。另一个问题是为什么会发生这种情况,即makemigrations无法识别我的更改(可能是一些缓存问题等)?
--fake-initial
选项。 - Alasdair