Forum: Ruby on Rails Use without DB data

Announcement (2017-05-07): is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see and for other Rails- und Ruby-related community platforms.
on 2007-03-22 19:41
(Received via mailing list)
How can I use inside one of my models without specifying
the specifics of the database connection?

So in one of my models I have something like:
m ="localhost","myuser","mypass","mydb")
r = m.query("SELECT <some complicated SQL joining......>")

How can I have that SQL statement line above use the global database
connection that I already have available to ActiveRecord?

I know another option is find_by_sql, like:
@somemodels = Somemodel.find_by_sql("SELECT <something

But I am not fetching objects with my SQL.  According to the API, the
left-hand side of that statement must be model objects.

Am I right on this?  Is there a way to use the global db settings
while using m = so I don't have to write the user/pass/db
attributes inside the model?

Shawn Roske (Guest)
on 2007-03-22 22:50
(Received via mailing list)
You can use ActiveRecord::Base.connection, e.g.
ActiveRecord::Base.connection.select_all("some nasty sql here"); and
it will return as an array of hashes.

on 2007-03-22 23:49
(Received via mailing list)
Bingo.  Exactly what I was needing.

Thanks Shawn,
This topic is locked and can not be replied to.