python - 更改 Django/Postgres db_table 名称

标签 python django postgresql

我按照这里的说明操作:Change table name in Django将我的 Django 模型移动到不同的应用程序。它有效,但现在我的模型正在引用中的旧表名

    class Meta:
        db_table = 'api_currency'

将此表的名称迁移回默认值 countries_currency 的适当方法是什么,就像在 countries_currency 应用程序中一样?

最佳答案

默认情况下,django 在您的 app_name (Read more) 之后创建表名。 这样一来,您就可以在不同的应用程序中使用相同的表名。

要返回默认值,首先手动删除为表 api_currency 创建的迁移文件。如果您也已经迁移,那么您可以手动删除表 django_migrations 中的行(它会跟踪所有已迁移的迁移文件,因此只需删除包含迁移文件名的行,其中此表是在您的数据库中创建的)或通过运行假迁移创建的。 (警告:仅当数据库中没有有值(value)的数据时才删除。)

之后,删除这个 Meta 选项,然后再次运行 make_migrations 并迁移。

关于python - 更改 Django/Postgres db_table 名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53167889/

相关文章:

python - 选择不同的 SQLalchemy 键控元组错误

django - python google oauth身份验证解码并验证id_token

php - SQL SELECT 和 PHP 检索速度 INT vs TINYINT vs VARCHAR vs ENUM?

python - Celery导入库后找不到周期性任务

postgresql - 在 OpenShift 上设置 graphQL

postgresql - 将 PostgreSQL SQL 查询结果写入 CSV 格式的 Shell 脚本

python - Fabric:设置每个主机外部任务的配置变量

python - 检查Python中的多键字典中是否存在集合的元素?

javascript - 粗略的 Unicode -> 没有 CLDR 的语言代码?

python - 具有基于类的 View 的装饰器