calculations on a virtual attribute...

I is possible to do calculations on a virtual attribute... such as
sum, or count

I tried using the same as I would on a DB column but of course that
doesn't work. ie. Pricelist.sum(:cyberguide)

I have a table with 2 fields, one with a price and the other with a
condition then have a virtual attribute which does a calculation:

  def cyberguide
    if condition <= 2
      [price.pricehigh]
    elsif condition == 3
      [price.pricehigh * 0.9]
    elsif condition == 4
      [price.pricehigh * 0.5]
    elsif condition == 5
      [price.pricehigh * 0.25]
    elsif condition == 6
      [price.pricehigh * 0.2]
    else
      [price.pricehigh * 0.15]
    end
  end

It works perfectly for individual functions, but how would a sum the
virtual attribute?

Thanks

I is possible to do calculations on a virtual attribute... such as
sum, or count

I tried using the same as I would on a DB column but of course that
doesn't work. ie. Pricelist.sum(:cyberguide)

You're going to have to construct an appropriate sql fragment, eg
according to the docs you can do Pricelist.sum("2 * price") - you just
need that on steroids.

Fred