我正在使用rails 2.3.5和mysql。在ActiveRecord :: Schema上切換連接
我有一個模型TableA和另一個模型TableB。 TableA完全沒問題..但我需要爲TableB交換連接。我正在連接到另一臺服務器,所以我必須檢查該表是否存在。如果沒有,我會創建一個新表。
TableB.establish_connection(new_database_params)
unless TableB.table_exists?
ActiveRecord::Base.establish_connection(new_database_params)
ActiveRecord::Schema.define do
create_table :table_bs do |t|
t.column :text, :string
end
end
ActiveRecord::Base.establish_connection("#{RAILS_ENV}")
end
我注意到TableB.establish_connection(new_database_params)將我連接到新服務器。這很好。
當我試圖創建一個新表時,我仍然需要調用ActiveRecord :: Base來交換連接。有沒有辦法在ActiveRecord :: Schema上交換連接? (類似於Model.establish_connection?)
你找到了這個答案嗎?我試圖達到完全一樣的東西。 – 2011-06-13 20:46:07