【发布时间】:2011-04-21 19:02:42
【问题描述】:
例如我有以下迁移
class AddStatusField < ActiveRecord::Migration
def self.up
add_column :tasks, :status, :string
Task.update_all "status='complete'", "completed = 't'"
remove_column :tasks, :completed
end
end
当我运行它时(使用rake db:migrate),我收到以下消息
== AddStatusField: migrating =================================================
-- add_column(:tasks, :status, :string)
-> 0.0010s
-- update_all("status='complete'", "completed = 't'")
rake aborted!
An error has occurred, this and all later migrations canceled:
undefined method `update_all' for #<ActiveRecord::ConnectionAdapters::SQLite3Adapter:0xd3d34a8>
如果我立即再次运行迁移,update_all 调用似乎可以工作。
我正在使用 Rails 2.3.5 和 sqlite3。
什么给了?
【问题讨论】:
标签: ruby-on-rails sqlite rails-migrations