我有以下迁移文件:
class AddDetailsForClient < ActiveRecord::Migration
def change
add_column :clients, :contact_first_name, :string
add_column :clients, :contact_last_name, :string
end
end
问题是没有实际创建客户端表的先前迁移。因此,当它尝试将列添加到nonxistant表时,rake db:migrate在此migraiton上失败。我想将此添加到该行上方的同一个迁移文件中:
if !ActiveRecord::Base.connection.table_exists?('clients')
def change
create_table :clients do |t|
t.timestamps
end
end
end
在我尝试这样的事情之前,我想知道是否有更好的解决方案。