Rails 3生成迁移 - 没有up或down方法

时间:2011-09-29 16:28:02

标签: ruby-on-rails migration

刚学习rails,我正在进行迁移,这一切都从逻辑上开始,直到我在代码中遇到奇怪的事情;

rails generate migration AddRegionToSupplier

上面会生成一个只有“def change”方法的迁移文件。

我用Google搜索了这一点,发现这正是应该发生的事情;

http://guides.rubyonrails.org/migrations.html

我原以为它会生成“def up”和“def down”方法,以便可以回滚迁移。我这一代人做错了什么,或者我错过了一些明显的东西?

1 个答案:

答案 0 :(得分:16)

来自link you pasted

  

Rails 3.1通过提供新的change方法使迁移变得更加智能。   这种方法是编写建设性迁移的首选(添加   列或表)。 迁移知道如何迁移数据库   并且在不需要回滚迁移时将其反转   写一个单独的向下方法。

所以看起来你不必担心def self.down,因为Rails现在足够聪明,知道如何回滚。