Ruby on Railsで複数のDBを使用。
またまたメモ。
まず、新しく接続したいDBをconfig/database.ymlに書く。
hoge:
adapter: mysql
database: hoge_development
encoding: utf8
username: hoge
password: hogehoge
socket: /var/run/mysqld/mysqld.sock
host: localhost
次は、hogeというModelを作ろう。
#ruby script/generate model hoge
んで、hoge.rbを変更。
class hoge < ActiveRecord::Base
self.abstract_class = true
establish_connection(:hoge)
end
そしたら、hogeDBにあるhogehogeテーブルにアクセスしたいのでhogehogeというModelを作る。
#ruby script/generate model hogehoge
んで、hogehoge.rbを変更してhogeを継承させる。
class hogehoge < hoge
end
これで
@hogehoges = hogehoge.find(:all)
とかが使えました。