如何更改rails应用中的列名和类型?您是创建新迁移以进行更改,还是回滚,编辑迁移文件,然后再次迁移?
在Rails中执行此操作的“正确”方法是什么?
答案 0 :(得分:2)
这取决于您在开发周期中发生的时间,如果您最近进行了更改并且没有将其推送到公共存储库中,那么您确实可能想要执行回滚操作然后编辑迁移文件并再次迁移,只是为了保持清洁。但是,如果迁移的变化是一些迁移,那么您应该创建一个新的迁移,将行和列更改为“新的”旧值。
答案 1 :(得分:1)
好吧,要撤消迁移,您通常希望将其回滚:
bundle exec rake db:rollback
还可以指定VERSION=
。如果您想将其更改为全新的内容,则可以进行新的迁移。通常,你根本不应该接触旧的迁移。
答案 2 :(得分:0)
Rails让您可以选择创建迁移并以各种方式进行更改。因此,没有“红宝石开发者”的选择技术。
但是,每次创建迁移时,都会创建一个文件,它表示开发历史记录。在很多情况下,一个更简单的文件应该是uselfull,就像其他ruby初学者必须查看和修改的代码一样。在其他情况下,高级开发人员可能需要了解对代码所做的更改和改进,特别是如果代码运行了很长时间(可能是某些年份)。