Ale*_*pov 0 migration ruby-on-rails
如果我这样做,在Rails迁移中,它有什么区别吗:
def up
foo
end
def down
bar
end
Run Code Online (Sandbox Code Playgroud)
或这个:
def change
reversible do |direction|
direction.up { foo }
direction.down { bar }
end
end
Run Code Online (Sandbox Code Playgroud)
?
我认为这是最好使用改变方法,如果迁移的一部分包括可逆的方法,如create_table,add_column等。除此之外,有什么不同?
如您所示,它没有优势。主要优点是很多时候根本不需要编写down方法/块,例如
class SomeMigration < ActiveRecord::Migration
def change
create_table :articles do |t|
...
end
end
end
Run Code Online (Sandbox Code Playgroud)
reversible当迁移的一小部分活动记录不知道如何撤消时(例如原始SQL语句),通常使用该方法
| 归档时间: |
|
| 查看次数: |
751 次 |
| 最近记录: |