在ShowNearby,我們一直在進行從PHP到RoR 3.1的大規模遷移,并且我們面臨著一些您可能已經解決的一些問題。我們擁有大量數據,因此我們決定將數據庫分成幾個我們可以分別處理的數據庫。例如,我們的帳戶,地點,日志和其他信息被分為幾個數據庫我們需要獲得移植,裝置,模型才能很好地玩耍,到目前為止,情況一直很混亂。我們對于解決方案可接受的一些要求:一個模型應該與其中一個數據庫中的一個表相關。rake db:drop-應該刪除我們在database.yml中指定的所有數據庫環境rake db:create-應該創建我們在database.yml中指定的所有數據庫環境rake db:migrate-應該運行到各種數據庫的遷移rake db:test-應該獲取固定裝置并將其放入各種數據庫以及測試單元/功能/等我們正在考慮為每個數據庫設置單獨的Rails項目,并將它們與ActiveResource連接起來,但是我們認為這不是很有效。你們有沒有處理過類似的問題?
3 回答

莫回無
TA貢獻1865條經驗 獲得超7個贊
連接到不同的數據庫非常容易:
# model in the "default" database from database.yml
class Person < ActiveRecord::Base
# ... your stuff here
end
# model in a different database
class Place < ActiveRecord::Base
establish_connection (
:adapter => "mysql",
:host => "other_host",
:username => "username",
:password => "password",
:database => "other_db"
)
end
我會警惕設置多個Rails項目,因為這將為控制器的數據檢索增加很多開銷,這可能會使事情變慢。
至于您關于遷移,固定裝置,模型等的問題:我認為不會有簡單的方法,因此請發布單獨的問題,并盡可能具體。
將數據庫合并為一個不是一種選擇嗎?它將使您的生活更加輕松!
- 3 回答
- 0 關注
- 546 瀏覽
添加回答
舉報
0/150
提交
取消