Looping through results of complex query

I have a postgresql join query that returns all the correct values on
command line but when I try to loop through the results in a view, I
can’t access all the fields.

Specifically, I’m trying to display the fields in the rations table and
can’t seem to print them out to save my life.

Here’s the query:

@herd_rations_during_season = HerdRation.find(:all,
        :joins => ["INNER JOIN seasons ON seasons.herd_id =
herd_rations.herd_id AND seasons.season_start_date >=
herd_rations.grazing_begun AND herd_rations.grazing_end <=
seasons.season_end_date INNER JOIN rations ON rations.id =
          :select=>'DISTINCT ON (herd_rations.id) herd_rations.id,
herd_rations.grazing_begun, herd_rations.grazing_end,
seasons.season_name, seasons.season_start_date, seasons.season_end_date,
          :conditions => ["herd_rations.herd_id=?", params[:id]])

@herd_rations_during_season.each do |herd_ration|
  puts("----herd_ration: #{herd_ration.ration}")           #prints nil
  puts("----grazing_begun: #{herd_ration.grazing_begun}")  #good
  puts("---- grazing_end: #{herd_ration.grazing_end}")    #good

Thanks for any help!

solved the problem and feel a bit stupid but, at the same time not.

I accessed ration.ration_name by simply doing this in my loop:


The part I’m not understanding, is that when I used inspect in the loop,
it did not display any reference to to ration.ration_name:

@herd_rations_during_season.each do |herd_ration|
  puts("----herd_ration: #{herd_ration.inspect}")   #doesn't display 
ration_name anywhere