【发布时间】:2015-10-11 16:58:08
【问题描述】:
Rails guides to active record migrations 说你可以做
change_column_default :products, :approved, from: true, to: false
我在 Rails 中有一个类似于以下内容的 change 方法:
change_column_default :people, :height, from: nil, to: 0
旨在从没有任何默认值变为默认值为零。
但是,当我尝试回滚时,我得到了
ActiveRecord::IrreversibleMigration: ActiveRecord::IrreversibleMigration
考虑到我给 Rails 一个 from 和 to,它为什么不接受它?
我使用的是 Rails 4.2.0。
【问题讨论】:
-
Rails 是否试图避免类型强制问题?
-
我在method definition 中看不到任何
from或to参数 -
@JonathanAllard 假设
from和to是哈希键,而不是可选参数,它们不会出现在方法定义中。 -
@JonathanAllard 你怎么知道你链接的方法是由
ActiveRecord::Migration中的change_column_default调用调用的方法?
标签: ruby-on-rails ruby-on-rails-4 rails-activerecord rails-migrations