如何在RoR中手动更新架构版本?

时间:2010-03-04 10:20:13

标签: ruby-on-rails migration rdbms

我有一个迁移,通过调用ActiveRecord :: Base.connection()方法“execute”向MySQL添加触发器。除了没有更新架构版本之外,它工作正常。我怀疑这是因为数据库结构本身没有改变(没有列和表更新)。

有没有办法在我的迁移中强制架构版本更新?

1 个答案:

答案 0 :(得分:0)

实际上我认为这应该是根据我对如何定义:migrate任务的观察来更新schema.rb文件版本。

task :migrate => :environment do
  ActiveRecord::Migration.verbose = ENV["VERBOSE"] ? ENV["VERBOSE"] == "true" : true
  ActiveRecord::Migrator.migrate("db/migrate/", ENV["VERSION"] ? ENV["VERSION"].to_i : nil)
  Rake::Task["db:schema:dump"].invoke if ActiveRecord::Base.schema_format == :ruby
end

如果没有更新,可能您的:schema_format不是:ruby