首页 > 解决方案 > 如何在 MySQL 中更新 django 数据库模型?

问题描述

如何更新 MySQL 中的数据库表?

例如,在我的 Django 应用程序中,我有一个名为 'Category1' 的数据库表,我只想将其重命名为“Category”。

运行python manage.py makemigrationsand 后python manage.py migrate,它没有显示任何错误,但我在 MySQL Workbench 中看不到任何更改。

这个怎么做 ?

标签: pythonmysqldjangodjango-modelsmysql-workbench

解决方案


您可以检查您的迁移是否已应用python manage.py showmigrations,您甚至应该在此命令的末尾添加应用程序名称以仅从所述应用程序检索迁移:python manage.py showmigrations app_name

如果尚未应用,则应使用python manage.py migrate app_name migration_number. 您将 app_name 替换为您的应用名称,并将 migration_number 替换为迁移名称的前 4 位数字。

如果您更改模型然后应用相关的迁移,您应该在数据库中进行修改(这就是迁移的点)。

使用时makemigrations要小心,有时 Django 会将字段重命名为删除和创建字段。在您的迁移中,您应该找到该方法Alter field,否则您应该手动修改它。


推荐阅读