質問

ここにあります。

私は書きレールを適用するモニタデータの品質が特定のデータベースです。そのために、必を実行することができるようにな直接SQL文に渡これらのデータベースのコースと同じではありませんの駆動用として使用されるレールを適用モデルです。この手段を利用できませんのtrickと思う、今日この頃なのでActiveRecordベース接続します。

のデータベースIに接続する必要があるっているものと考えられる設計時間(すなわち:ただその詳細データベースです。yaml).むしろ、私は"モデルdatabase_details'のユーザーのために使用する入力の上、データベースアプリケーションからの実行のクエリを行います。
では、接続にこれらのデータベースが動的に解決実行時のみです。

する方法を教えてください。

おかげさ
ロロ"号

役に立ちましたか?

解決

あったかのようなことがたへのメールが受信できるようにインスタンスの外部アプリケーションしたコード、例えば次のようなもの:

  def get_custom_connection(identifier, host, port, dbname, dbuser, password)
      eval("Custom_#{identifier} = Class::new(ActiveRecord::Base)")
      eval("Custom_#{identifier}.establish_connection(:adapter=>'mysql', :host=>'#{host}', :port=>#{port}, :database=>'#{dbname}', " +
      ":username=>'#{dbuser}', :password=>'#{password}')")  
    return eval("Custom_#{identifier}.connection")
  end

この主な変更ActiveRecord::ベース接続のモデルからは継承し、実行できるSQLこの接続-廃棄のオブジェクトが行われます。

他のヒント

できるプログラムの確立接続を使うこ

ActiveRecord::Base.establish_connection(
   :adapter  => "mysql",
   :host     => "localhost",
   :username => "myuser",
   :password => "mypass",
   :database => "somedatabase"
)

ものと置き換えることができsomedatabaseによるdatabase_model.database_name値です。のadatpterすべて

ActiveRecord::ベース。establish_connection書

を利用することができ

ActiveRecord::Base.find_by_sql("select * ") 

る実行を行うsqlクエリ。

ActiveRecord::ベース。find_by_sql書

Mrマット った資料に不備がある場合は

詳細情報(古いもののデザインアプローチすることができます。 こちらの そして、再接続の通常のデータベースが終わった時点で:)

ることができることを通じて ます。establish_connection

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top