【问题标题】:How to update django database models in MySQL?如何在 MySQL 中更新 django 数据库模型?
【发布时间】:2021-01-04 09:12:54
【问题描述】:
如何在 MySQL 中更新数据库表?
例如,在我的 Django 应用程序中,我有一个名为 'Category1' 的数据库表,我只想将其重命名为“Category”。
在我运行 python manage.py makemigrations 和 python manage.py migrate 之后,它没有显示任何错误,但我在我的 MySQL Workbench 中看不到任何变化。
如何做到这一点?
【问题讨论】:
标签:
python
mysql
django
django-models
mysql-workbench
【解决方案1】:
您可以使用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,如果没有,您应该手动找到modify。