我的 Django 模型中的一个字段已经存在于 PostgreSQL 数据库中

Posted

技术标签:

【中文标题】我的 Django 模型中的一个字段已经存在于 PostgreSQL 数据库中【英文标题】:A field in my Django model already exists in the PostgreSQL database 【发布时间】:2021-04-14 09:19:49 【问题描述】:

我有一个带有模型 MyModel 和一些字段 my_field 的 Django 应用程序。我的 PostgreSQL 数据库在 mymodel 表下已经有一个同名的字段,因为它是过去手动添加的。当我进行迁移时,Django 会生成一个冲突的 AddField 操作。目前我手动编辑每个生成的迁移以消除冲突。

有没有办法告诉 Django 该字段已经存在?

很遗憾,这是一个实时产品,所以我不会丢失任何数据。

【问题讨论】:

生成添加字段的迁移,然后运行python manage.py migrate <app_name> <migration_name> --fake 将迁移标记为已应用,而无需实际运行 【参考方案1】:

生成添加该字段的迁移,然后运行 ​​python manage.py migrate --fake 将迁移标记为已应用而不实际运行它

谢谢伊恩·谢尔文顿。

【讨论】:

以上是关于我的 Django 模型中的一个字段已经存在于 PostgreSQL 数据库中的主要内容,如果未能解决你的问题,请参考以下文章

如果字段存在,Django过滤查询集

如何在具有 Jsonfield 的模型中发布 django rest 中的数据

Django 中的 Slugfield URL 实现

在Django中实现具有许多重叠字段的模型的最佳方法?

django模型和字段

django项目模型字段