Thanks Maurício,

For that extra table I used either
ActiveRecord::Base.establish_connection( :ube ) in the model, with the
following in database.yml:
ube:
  adapter:  mysql
  database: ube
  user:     root

or

ActiveRecord::Base.establish_connection(
  :adapter  => 'mysql',
  :database => 'ube',
  :user      => 'my_user' )
in the model and no :ube declaration in database.yml

As I understand using 'establish_connection' by itself would connect
me to the 'current' DB, wouldn't it?

Thanks.

Pepe

On May 31, 11:59 am, Maurício Linhares <[email protected]>
wrote:
> Stupid question, did you do: "ActiveRecord::Base.establish_connection"
> or did you just call "establish_connection" in your model?
>
> As you might imagine right now,  calling
> "ActiveRecord::Base.establish_connection" is very different than
> calling establish_connection in the model you want to connect to
> another database.
>
> -
> Maurício Linhareshttp://alinhavado.wordpress.com/(pt-br) 
> |http://blog.codevader.com/(en)
>
> On Sun, May 31, 2009 at 11:17 AM, pepe <[email protected]> wrote:
>
> > 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 [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/rubyonrails-talk?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to