Inner Join with ORM

Hi

I wonder if there is a simple way to do a INNER JOIN with rails instead
of having to resort to find_by_sql and having to write the sql query
myself?

An example:

I have tasks linked to folders via habtm and tasks are also linked to
documents via habtm. I now want to see the documents linked to a given
folder (via its associated tasks)

So in folder.rb I have a function:

def documents
tids=self.task_ids.join(",")
if !tids.blank? then
return Document.find_by_sql(“SELECT distinct documents.* from
documents inner join task_events on documents.id=task_events.general_int
where task_events.event_type=‘ATTACH’ and task_events.task_id
in(#{tids})”)
else
return []
end
end

This works, but there must be a easier way to do this using ORM?

Comments and suggestions most welcome!
Pieter

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs