更新的迁移文件未反映在Schema.rb文件中

时间:2014-02-18 17:40:18

标签: ruby-on-rails-3

我正在运行这样的迁移:

class CreatePages < ActiveRecord::Migration
  def change
    create_table :pages do |t|
      t.string :name
      t.string :permalink
      t.integer :position
      t.boolean :visible

      t.timestamps
  end
end
end

然后我想我忘了设置布尔值的默认值,所以我回到迁移文件并添加以下内容:

t.boolean :visible, :default => false

然后我再次运行rake db:migrate。但是,schema.rb文件不会更新。之前我已经运行了迁移很长一段时间,因此无法回滚并重做迁移。 我知道我不应该直接更新Schema文件。 任何人都可以帮我根据我在迁移文件中所做的更改来使schema.rb文件更新。

谢谢

1 个答案:

答案 0 :(得分:0)

您必须添加新迁移才能更改列的默认值。

请参阅this post