Rails rename_column,但保持旧版本

时间:2012-06-15 16:00:26

标签: ruby-on-rails heroku

几周前我最初发布了我的第一个Rails应用程序(我们的iPhone应用程序的API),但昨晚我注意到我拼错了列名。我将重命名该列,但是当我这样做时,它将破坏iPhone应用程序,因为它的拼写方式不同。

保留旧版iPhone应用程序重新命名列后的最佳方法是什么?我正在Heroku上部署rails应用程序,如果这有任何区别的话。

2 个答案:

答案 0 :(得分:4)

重命名该列,然后使用旧的错误名称创建它的别名。 E.g:

alias_attrib :wrong_name, :right_name

然后等待不再需要支持旧iPhone应用程序的那一天,并删除别名。

答案 1 :(得分:1)

保留新版本和旧版本的别名,直到您将所有客户端或几乎所有客户端更新为仅访问正确列的最新版本。

在您的客户停止使用(或其使用率接近零)别名后,将其删除。