How to create Rails models w/ multiple complex associations?

I am trying to figure out how to create ActiveRecord models with
associations that can yield the same results as this SQL query:

select login, first_name, last_name, email_address from accounts inner
join people on person.id = accounts.person_id inner join
email_address_people on person.id = email_address_people.person_id inner
join email_addresses on email_address.id =
email_address_people.email_address_id inner join email_address_types on
email_address_types.id = email_address_people.email_address_type_id
where email_address_types.email_address_type = ‘account’;

The table structure is as follows, and assumes each table has an id per
normal ActiveRecord convention:

accounts
id : int
person_id : int
login : string

people
id : int
first_name : string
last_name : string

email_address_people
id : int
person_id : int
email_address_id : int
email_address_type_id : int

email_addresses
id : int
email_address : string

email_address_types
id : int
email_address_type: string

I need the models to be fully functional, and not limited by things like
:find_by_sql.

How do I create the associated models that make this possible?

Thanks!
Chris B.
[email protected]

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