I have four tables and and its migrations are like

create_table :officers do |t|
  t.string  :name
  t.timestamps
end

create_table :areas do |t|
  t.string  :name
  t.integer :officer_id
  t.timestamps
end

create_table :groups do |t|
  t.string  :name
  t.integer :area_id
  t.timestamps
end

create_table :group_members do |t|
  t.string  :name
  t.integer :group_id
  t.timestamps
end

table releationships like officer has many areas, area has many groups
and group has many group_members.

currently i have used following way to access group_members from
officer, like

officers = Officer.all
for officer in officers
  areas = Area.all(:conditions=>["officer_id =
?",officer.id],:order=>:name)
  area_ids = areas.map { |area| area.id }
  area_id = area_ids*"," if area_ids.length > 0

  groups = Group.all(:conditions=>["area_id in
#{area_id}"],:order=>:name)
  group_ids = groups.map { |group| group.id }
  group_id = group_ids*"," if group_ids.length > 0

  group_members = GroupMember.all(:conditions=>["group_id in #{group_id}
and name like "Mrs.%%"],:order=>:name)
  for group_member in group_members
    member_name = group_member.name
  end
end

Is it possible to directly access the group_members from officer model
using rails active_record association that means officer.group_members
or tell me easiest way.Give me the example with such relationship.

-- 
Posted via http://www.ruby-forum.com/.

-- 
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/rubyonrails-talk?hl=en.

Reply via email to