1

我需要将应用程序“myapp”中的 Django 模型从“Hotel”重命名为“Client”,并且我不想使用 South。

我想知道使用以下查询处理 MySQL 中的更改是否安全?

将表 myapp_hotel 重命名为 myapp_client;

将表 myapp_hotel_sites 重命名为 myapp_client_sites;

对于与现在的客户表有外键关系的表:

ALTER TABLE myapp_client_sites 更改 hotel_id client_id int(11);

可以这么简单,还是我错过了什么?

4

1 回答 1

0

在 MYSQL 中可以像这样更改表名,但考虑到您还需要在 django 代码中更改类名。否则 orm 将不会映射到 mysql 数据库表名。

使用类似south的工具将确保在数据库中需要的地方进行所有代码更改。

自动迁移创建:South 可以查看您的 models.py 文件中的更改并自动编写与您的更改相匹配的迁移。

于 2013-03-27T10:02:53.233 回答