我正在研究多數據庫Rails 3應用程序。每個數據庫都有不同的模式(並且在生產中位於不同的位置)。我已經設置了應用去跟不同的數據庫,像這樣:使用不同模式的多個數據庫的Rake任務
的database.yml
development:
adapter: mysql2
encoding: utf8
reconnect: false
database: main_development
pool: 5
username: someuser
password: somepassword
socket: /tmp/mysql.sock
other_development:
adapter: mysql2
encoding: utf8
reconnect: false
database: other_development
pool: 5
username: someuser
password: somepassword
socket: /tmp/mysql.sock
型號/ other_base.rb
class OtherBase < ActiveRecord::Base
self.abstract_class = true
establish_connection "other_#{Rails.env}"
end
型號/ some_model.rb
class SomeModel < OtherBase
# Regular stuff here
end
現在,這適用於web應用程序,但不太適合運行rake任務,包括測試(未裝載夾具c orrectly)。有沒有可用於此的寶石?任何幫助讚賞。
此外,創建一個schema.rb文件可以處理不同數據庫的不同模式 - 也就是說,允許我執行rake db:create或db:setup之類的操作,並讓它創建多個具有數據庫特定模式的數據庫。
請給出一些關於錯誤的更多細節。某些日誌輸出或確切的錯誤。同時粘貼你的rake任務代碼不工作。 – Zimbabao 2011-02-23 10:20:31