find 'joins'

I am very frustrated with :joins in a find.

@debts = Debtortranstaxes.find(:all,   :conditions => ["trandate > ? and trandate <= ?", @per1, @per2],   :joins => 'LEFT JOIN debtortrans ON debtortrans.id=debtortransid',   :order => 'trandate, transno') => [#<Debtortranstaxes debtortransid: 67, taxauthid: 26, taxamount: 0.63>, #<Debtortranstaxes debtortransid: 67, taxauthid: 34, taxamount: 0.2>, #<Debtortranstaxes debtortransid: 68, taxauthid: 24, taxamount: 3.15>, #<Debtortranstaxes debtortransid: 68, taxauthid: 32, taxamount: 0.825>, #<Debtortranstaxes debtortransid: 69, taxauthid: 24, taxamount: 756.0>, #<Debtortranstaxes debtortransid: 69, taxauthid: 32, taxamount: 198.0>]

but this does not contain the columns from debtortrans table...even if I specifically name them with a :select =>

in the console, I can get the value @debts[0].trandate

but inside a loop, the value is not available to me...

for debt in @debts   if debt.trandate = ...

it simply tosses an undefined method error

How do I get all of the fields returned from joined tables in query?

Craig

I am very frustrated with :joins in a find.

@debts = Debtortranstaxes.find(:all, :conditions => ["trandate > ? and trandate <= ?", @per1, @per2], :joins => 'LEFT JOIN debtortrans ON debtortrans.id=debtortransid', :order => 'trandate, transno') => [#<Debtortranstaxes debtortransid: 67, taxauthid: 26, taxamount: 0.63>, #<Debtortranstaxes debtortransid: 67, taxauthid: 34, taxamount: 0.2>, #<Debtortranstaxes debtortransid: 68, taxauthid: 24, taxamount: 3.15>, #<Debtortranstaxes debtortransid: 68, taxauthid: 32, taxamount: 0.825>, #<Debtortranstaxes debtortransid: 69, taxauthid: 24, taxamount: 756.0>, #<Debtortranstaxes debtortransid: 69, taxauthid: 32, taxamount: 198.0>]

but this does not contain the columns from debtortrans table...even if I specifically name them with a :select =>

The console is tricking you. if you name them they will be there, they're just not displayed.

Fred.