Helper para escribir montos con palabras en español
Add this line to your application's Gemfile:
gem 'monto_escrito'
And then execute:
$ bundle
Or install it yourself as:
$ gem install monto_escrito
Para convertir una cantidad a palabras, simplemente hay que utilizar el método to_s
de la clase MontoEscrito::Decorador
:
irb(main):001:0> MontoEscrito::Decorador.new(10).to_s
=> "diez"
irb(main):002:0> MontoEscrito::Decorador.new(14).to_s
=> "catorce"
irb(main):003:0> MontoEscrito::Decorador.new(14.50).to_s(:short)
=> "catorce con 50/100"
irb(main):003:0> MontoEscrito::Decorador.new(14.50).to_s(:long)
=> "catorce con cincuenta"
Esta forma permite interpolar las conversiones:
irb(main):001:0> monto = MontoEscrito::Decorador.new(10)
irb(main):002:0> "Son pesos #{monto}"
=> "Son pesos diez"
Nota: actualmente se soportan sólamente números positivos menores a un cuatrillón. Puede extenderse fácilmente, pero a fines prácticos se deja en esa cantidad. Se arrojará un
ArgumentError
en caso de violar esa restricción de dominio.
- Fork it
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create new Pull Request
monto_escrito-1.0.3
: Bug arreglado en formato:short
para tres o más decimales.monto_escrito-1.0.2
: Se implementa formato:long
para los decimales.monto_escrito-1.0.1
: Se implementa formato:short
para los decimales.monto_escrito-1.0.0
: Se implementa una API basada en un objeto decorador, permitiendo interpolar llamadas.monto_escrito-0.0.1
: Se utiliza la primera API que opera como helper