Accessing eagerly loaded children

Hello!

In my controller, I have a model that preloads (or eager loads?) its
respective child members.

class Parent < ApplicationController

def show
   @parent = Parent.find(:all, :include => :children)
end
end

In my view, I need to display a specific child by searching for it in
@parent.children. Right now I am using ActiveRecord's find, which
results in an additional query to the database.

@parent.children.find(:all, :conditions => ['name = ?', jonas])

So would it be possible to use Enumerable's find method to search the
eagerly loaded children instead of using ActiveRecord's find?

Thanks!
Mike

Hello!

In my controller, I have a model that preloads (or eager loads?) its
respective child members.

class Parent < ApplicationController

def show
  @parent = Parent.find(:all, :include => :children)
end
end

In my view, I need to display a specific child by searching for it in
@parent.children. Right now I am using ActiveRecord's find, which
results in an additional query to the database.

@parent.children.find(:all, :conditions => ['name = ?', jonas])

So would it be possible to use Enumerable's find method to search the
eagerly loaded children instead of using ActiveRecord's find?

Yes! @parent.children.to_a.find #<= this is Enumerable's find

fred

Frederick Cheung wrote:

Yes! @parent.children.to_a.find #<= this is Enumerable's find

fred

Sweet, that worked wonderfully!