Possible bug on find method with :select attribute and aggregate functions...

Hi to everyboy.. I need your help in order to know if I get wrong..

I have this migration file:

class CreateSpecifications < ActiveRecord::Migration   def self.up     create_table :specifications do |t|       t.string :tolerancia       t.integer :umbral

      t.timestamps     end   end

  def self.down     drop_table :specifications   end end

I put some data by mean of script/console Specification.create(:umbral => 33, :tolerancia => 'alta') Specification.create(:umbral => 23, :tolerancia => 'alta') Specification.create(:umbral => 12, :tolerancia => 'baja') Specification.create(:umbral => 33, :tolerancia => 'baja')

Then when I run the following statement Specification.find(:all, :select => 'tolerancia, sum(umbral) as total', :group => 'tolerancia')

I get the following: [#<Specification tolerancia: "alta">, #<Specification tolerancia: "baja">]

Where is my total field??? How could I get it???

Besides, whit the following statement:

Specification.find(:first, :select => 'now() as ahora')

=> #<Specification >

Where is my field 'ahora'?

Thanks in advanced by your help...

Hi to everyboy.. I need your help in order to know if I get wrong..

I have this migration file:

class CreateSpecifications < ActiveRecord::Migration def self.up    create_table :specifications do |t|      t.string :tolerancia      t.integer :umbral

     t.timestamps    end end

def self.down    drop_table :specifications end end

I put some data by mean of script/console Specification.create(:umbral => 33, :tolerancia => 'alta') Specification.create(:umbral => 23, :tolerancia => 'alta') Specification.create(:umbral => 12, :tolerancia => 'baja') Specification.create(:umbral => 33, :tolerancia => 'baja')

Then when I run the following statement Specification.find(:all, :select => 'tolerancia, sum(umbral) as total', :group => 'tolerancia')

I get the following: [#<Specification tolerancia: "alta">, #<Specification tolerancia: "baja">]

Where is my total field??? How could I get it???

The default display for activerecord objects only shows attributes
corresponding to columns on the table. It's there - just not
displayed. Call the total method to read it ( although in this case
i'd just use the sum method instead of find)

Fred

Besides, whit the following statement:

Specification.find(:first, :select => 'now() as ahora')

=> #<Specification >

Where is my field 'ahora'?

Same as above

Yes!! You are right!! Thanks a lot!!