Struggling with formulating a simple join. I am pretty new to
activerecord and ruby.I have a database with tables 'bugs' and
'longdesc'. Here are my classes:
class Bug < ActiveRecord::Base
has_many :longdescs
end
class Longdesc < ActiveRecord::Base
belongs_to :bugs
end
I am trying to formulate a simple query joining these two tables but am
having no luck. I can get a query without joining to work fine. For
example, the following works perfectly:
It's helpful to know which version of ActiveRecord you're using. Here's
my solution in ActiveRecord 3:
Bug.joins(:longdescs)
The Rails guide to ActiveRecord is very helpful =>
From here you can do things like:
Bug.joins(:longdescs).where ...
Hope that helps,
-Troy
···
On 12-10-04 4:09 PM, "Rick Lindal" <lists@ruby-forum.com> wrote:
Hi...I am pretty new to activer record.
Struggling with formulating a simple join. I am pretty new to
activerecord and ruby.I have a database with tables 'bugs' and
'longdesc'. Here are my classes:
class Bug < ActiveRecord::Base
has_many :longdescs
end
class Longdesc < ActiveRecord::Base
belongs_to :bugs
end
I am trying to formulate a simple query joining these two tables but am
having no luck. I can get a query without joining to work fine. For
example, the following works perfectly:
Thanks Troy. It is ActiveRecord 3. Here is the solution that worked for
me.
bugs =
Bug.joins(:longdescs).select("bugs.bug_id,bugs.bug_status,bugs.priority,bugs.bug_severity,bugs.short_desc,longdescs.thetext").where(:bug_id
=> ARGV)