Objects in Arrays? Allowed, right?

You didn't initialize the @mtasks as an array. Try this:

@tasks = Task.find(:all, :conditions => "entity_id = #{session[:user].id}") @mtasks = Array.new() for t in @tasks   if Subtasks.find(:first, :conditions => "child_id = #{t.id}") != nil     @mtasks << t   end end