Decimales o floats


#1

Hola nuevamente

he estado leyendo en varios libros de ruby que es mala idea utilizar
float o tipos similares para manejar números con decimales, pero la idea
de manejar todo como centavos la encuentro mediocre.

alguien ha experimentado problemas utilizando cifras decimales en ror y
si es así como lo puedo resolver?

gracias


#2

El tema de los floats, redondeos, precisión, etc… da para mucha
discusión, así que voy a ser breve:

Puedes encontrarte errores de redondeo en las operaciones con floats
por pérdida de precisión, lo cual cuando se trata de pasta es siempre
delicado. La mejor opción es como comentas usar enteros y manejar
centavos o céntimos. Hay herramientas para hacerlo más fácil, mira en

http://wiki.rubyonrails.org/rails/pages/HowToUseIntegerFieldsAsMoney

o en http://pastie.caboo.se/private/uskrzwygsaaclhdyml

Un saludo.


#3

Con Rails Edge (y futuro Rails 1.2) puedes nombrar el atributo de tipo
:decimal, que usa la clase BigDecimal.

Ejemplo:

add_column :orders, :price, :decimal, :precision => 8, :scale => 2

Saludos.

Carlos P.
http://www.evolve.st/