Use "establish_connection"

117 views
Skip to first unread message

Tushar Gandhi

unread,
Feb 1, 2010, 8:36:58 AM2/1/10
to rubyonra...@googlegroups.com
Hi,
I have 2 database for my application "development1" and "development2".
My default database is "development1". But I have to update the
"contacts" table which is in "davelopment2". So I know that I have to
use the "establish_connection" to establish a connection with the
"development2".

I am doing like this
"
ActiveRecord::Base.establish_connection(
:adapter => "mysql" ,
:host => "localhost" ,
:database => "railsdatabase" ,
:username => "railsusername" ,
:password => "railspassword"
)"
contact=Contact.find(2)
contact.name="Tushar Gandhi"
contact.save"
Whether it will point to the "contacts" table of "development2"
database.
Whether this will work? beacuse I haven't made any connection reference
for "contacts" code.
Can anyone please help me out for this.
Thanks,
Tushar
--
Posted via http://www.ruby-forum.com/.

Sharagoz --

unread,
Feb 1, 2010, 8:48:15 AM2/1/10
to rubyonra...@googlegroups.com
If you are always going to CRUD contacts in development2, then you can
set the connection on the model:

in contact.rb
class Contact < ActiveRecord::Base
establish_connection(:development2)
end


in database.yml:

development2:
adapter: mysql
host: localhost
database: railsdatabase
username: railsusername
password: railspassword

Tushar Gandhi

unread,
Feb 1, 2010, 11:35:13 PM2/1/10
to rubyonra...@googlegroups.com
Thanks Sharagoz.
Yes it makes sense, to add the configuraion on model level.

Sharagoz -- wrote:
> If you are always going to CRUD contacts in development2, then you can
> set the connection on the model:
>
> in contact.rb
> class Contact < ActiveRecord::Base
> establish_connection(:development2)
> end
>
>
> in database.yml:
>

tispratik

unread,
Mar 3, 2010, 3:48:05 PM3/3/10
to Ruby on Rails: Talk
How do we open a read-only connection to the second database
development2 ?
Reply all
Reply to author
Forward
0 new messages