0

我有一个具有以下架构的数据库:

[ Region ] 1 --- * [ District ] 1 --- * [ Location ]

我想将中间表分成两个表,如下所示:

[ Region ] 1 --- * [ District ] 1 --- * [ Area ] 1 --- * [ Location ]

...在原始 District 表中保留一些字段(及其值),同时将其他列(及其值)转移到新创建的 Area 表中。

在 Rails 迁移中是否有标准/干净的方法来执行此操作(最好不使用原始 SQL)?

4

1 回答 1

3

那么你可以分两步做到这一点:

第一步

编写一个创建Area表及其列的迁移。在此迁移中,编写一些 Ruby 代码以使用District中的数据填充表。

第二步

编写一个更改District表的迁移,例如从 District 中删除不需要的列的迁移。

此时运行迁移应该可以得到你想要的,而不必使用 SQL。

希望能帮助到你 !:)

于 2013-05-16T23:35:38.907 回答