Forum: Ruby on Rails Getting database config info

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
005df2b73028b2e39304ac59768d709f?d=identicon&s=25 Robbie Carlton (Guest)
on 2006-02-01 15:56
(Received via mailing list)
Hi folks. I have a very small problem which is probably very simple. But
I've scoured the api and the rails book with no luck.
I'm trying to get information about the database definition out of
active
record. When I go into console and say

ActiveRecord::Base.connection

I get a MysqlAdapter object, with an instance variable called @config
that's
a hash containing all the information I need. However I can't get at the
config variable. I can think of two solutions, neither of which is
entirely
satisfactory. Either extend the definition of MysqlAdapter to include an
accessor for database name, but I'm loathe to do this as it's hacky and
will
cause problems with switching to different database types and updates to
rails. The other is to parse the config file myself, but again this is
clearly not clever as it's duplication.

Thanks in advance

Robbie
F16def8015a7562a285c65a14be48540?d=identicon&s=25 Mathieu Chappuis (Guest)
on 2006-02-01 16:11
(Received via mailing list)
I've asked a similar question, Peter has helped me as follow.

Hope this help you too

--------
From: Peter Donald <peter.j.donald@gmail.com>	Mailed-By:
lists.rubyonrails.org
Date: Dec 22, 2005 10:50 PM
Subject: Re: [Rails] [NEWB] How to access database.yml parameters in a
controller

On 12/23/05, Mathieu Chappuis <mathieu.chappuis.lists@gmail.com> wrote:
> Are the active database.yaml attributes for the current environment
> (dev, prod, test) available inside a controler ?

ActiveRecord::Base.configurations[RAILS_ENV.to_sym]['database']
ActiveRecord::Base.configurations[RAILS_ENV.to_sym]['host']
ActiveRecord::Base.configurations[RAILS_ENV.to_sym]['adapter']
005df2b73028b2e39304ac59768d709f?d=identicon&s=25 Robbie Carlton (Guest)
on 2006-02-01 16:23
(Received via mailing list)
thank you very much. I couldn't get this to work in console

ActiveRecord::Base.configurations[RAILS_ENV.to_sym]['database']

I didn't try it in a controller, but following your lead I did get this
to
work, which does exactly what I need

ActiveRecord::Base.configurations['development']['database']

cheers
41165a7e7126d616a0ae0762e00718e2?d=identicon&s=25 BigSmoke (Guest)
on 2006-02-02 20:47
(Received via mailing list)
I had some trouble finding these answers, because I couldn't find out
a decent set of keywords to search for. After finding the answer in
this thread, I added it to [1]. If you will, please take a look and
modify it in any way you see fit.

Thanks for providing the answer to my question,

  - Rowan

[1] http://wiki.rubyonrails.org/rails/pages/database.yml
This topic is locked and can not be replied to.