我有一个迁移,通过调用ActiveRecord :: Base.connection()方法“execute”向MySQL添加触发器。除了没有更新架构版本之外,它工作正常。我怀疑这是因为数据库结构本身没有改变(没有列和表更新)。
有没有办法在我的迁移中强制架构版本更新?
答案 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
?