だから私はconfig/database.yml
に外部データベースを追加できるようにしたいと思います。レールを外部データベース呼び出しにする方法は?
これは可能ですか?私はどのように把握することができませんでした。
「異なるモデルで複数のデータベース
接続通常ActiveRecord::Base.establish_connection
を介して作成してActiveRecord::Base.connection
によって取得さへの接続が。ActiveRecord::Base
から継承するクラスはすべて、この接続を使用します。しかし、あなたは、クラス固有の接続をも設定することができます。たとえば、 Course
がActiveRecord::Base
ですが、別のデータベースに存在する場合は、あなただけCourse.establish_connection
とCourse
を言うことができるとそのサブクラスのすべてではなく、この接続を使用します。
この機能は、接続を維持することによって実現されていますプールによってActiveRecord::Base
に格納されます。これはクラスによってインデックスされたハッシュです。接続が要求された場合、retrieve_connectionメソッドは接続プール内で接続が検出されるまでクラス階層を上ります。 「
後で接続を閉じる必要がありますか? – Kirby
@Kirby:私はあなたがそれをしたいとは思わない、そうでなければレールは各要求に対して新しい接続を開きます。ここでは、サーバーの起動時に一度だけ実行されます。 – ryeguy
ありがとうございました!自分のレールアプリを外部のデータベースに接続しようとしていました。非常に役立ちます。 – Vicer