rails:2226
From: 京和 崇行 <kyowa_t@k...>
Date: Sat, 16 Jun 2007 01:16:35 +0900
Subject: [rails:2226] Re: Magic Multi-Connections
京和と申します。 私も近い状況に遭遇しました。 結論から言うと、ソースの一部を変更(一行コメントアウトするだけですが)すると 初回から設定したコネクションを利用するようになりました。 ただ変更による副作用までは分からなかったので、概要をまとめて作者のMLへ 投稿してみたのですが、返事はあったもののまだ対応されてないです。 コメント部分なども書いてありますので詳細はこちらをご覧下さい。 http://groups.google.com/group/magicmodels/browse_thread/thread/da07e3789193ed7b ちなみにdevelopmentモードでRailsを実行しているとクラスが キャッシュされない(常にloadされる?)ので必ずデフォルトのDBへ 接続すると思います…。 ご参考になれば幸いです。 2007/06/15 14:20, 橋本健太 wrote: > 橋本と申します。 > いつも、大変お世話になっております。 > > Magic Multi-Connections > ( http://magicmodels.rubyforge.org/magic_multi_connections/ ) > を試しているのですが、「connection」メソッドを呼び出さない限り、 > 元のDBを読みに行ってしまうという状況に悩まされております。 > お力をお貸しいただけるとたすかります。 > > 以下のような設定を行っております。 > > ---- config/database.yml (抜粋) ---- > development: > adapter: mysql > host: localhost > database: first > second: > adapter: mysql > host: localhost > database: second > -------- > ---- config/environment.rb (抜粋) ---- > require 'magic_multi_connections' > module SecondDb > establish_connection :second > end > -------- > ---- app/controllers/my_test_controller.rb ---- > class MyTestController < ApplicationController > def index > # SecondDb::MyTest.connection > mytest = SecondDb::MyTest.find( 1 ) > end > end > -------- > > ここで、ブラウザから http://localhost:3000/my_test/index/1 につなぐと、 > 「first」の方のDBへアクセスしようとして、テーブルがないためにエラーにな > ります。 > > そこで、「app/controllers/my_test_controller.rb」のコメントアウトしてある、 > 「SecondDb::MyTest.connection」の部分を有効にすると、 > 「second」のDBへ正常にアクセスできるようになります。 > 一度アクセスできるようになってしまえば、再びコメントアウトしても、 > webrick を再起動しなおさない限り、「second」の方につながり続けます。 > > この、「SecondDb::MyTest.connection」については、記述する必要が > あるのでしょうか?それとも、足りない設定などがありそうでしょうか? > > お知恵をお貸しいただけるとありがたいです。 > > よろしくお願いいたします。 > -- ML: rails@r... 使い方: http://QuickML.com/
2225 2007-06-15 07:20 [kem@c... ] Magic Multi-Connections -> 2226 2007-06-15 18:16 ┗[kyowa_t@k... ] 2227 2007-06-16 20:19 ┗[kem@c... ]