Hello,

I have been wrestling for a couple of days trying to make my
application work with 2 different databases simultaneously. Finally
got it running but I am a bit disappointed at what I needed to do in
order to make it work. I have a couple case scenarios:

First case scenario:
MySQL A: 6 tables
MySQL B: 1 table

Following instructions from the AWDWR book and any other source of
information I've read I add an
**ActiveRecord::Base.establish_connection()** declaration in the model
for the table in MySQL B.

Seems simple, but did not work. I tried adding the connection
parameters inside the model and also using a symbol to reference a
'database.yml' entry. Nothing.

Finally, when I was getting ready to ask for help I had the idea that
made it work. I added **self.table_name = 'my_db.my_table_name'** in
every model (including the main DB, named 'A' in this example) and
everything started working.


Second case scenario:
MySQL: 6 tables
Oracle: 1 table

Same as above but in addition to adding the **self.table_name** stuff
I needed to add in every table of the main (MySQL) DB an
**ActiveRecord::Base.establish_connection()** declaration pointing to
either 'development', 'test' or 'production', depending on which DB I
was using.


I thought that Rails would 'know' which DB to use. Am I wrong? Should
I have added any type of setup value in 'environment.rb'/other place
to avoid all this?

Thanks.

Pepe
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To post to this group, send email to rubyonrails-talk@googlegroups.com
To unsubscribe from this group, send email to 
rubyonrails-talk+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/rubyonrails-talk?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to