Rut
Valida y formatea RUTs chilenos.
Instalación
Incluye esta línea en tu Gemfile
gem 'rut'Y luego ejecuta bundle en la carpeta de tu proyecto.
Uso
La gema habilita la clase Rut, la que cuenta con tres métodos:
-
valid?(rut)retornatruesi el rut es válido. -
dv(rut)retorna el dígito verificador del rut. El argumento debe ser un rut sin dígito verificador. -
format_rut_with_dv(rut, validar=true)formatea el rut recibido como argumento. El rut debe incluir el dígito verificador. -
format_rut_without_dv(rut)formatea el rut recibido como argumento. El rut NO debe incluir el dígito verificador.
Ejemplos
# Validación
Rutcl::Rut.valid?("16365637k") #rut válido 16.365.637-k
#=> true
Rutcl::Rut.valid?("163656370") #rut inválido 16.365.637-0
#=> false
# Cómputo de dígito verificador
Rutcl::Rut.dv(1) #rut 1-9
#=> 9
Rutcl::Rut.dv(16365637) #rut 16.365.637-k
#=> "k"
# Formateo para RUTs que incluyen dígito verificador
Rutcl::Rut.format_rut_with_dv("16365637k")
#=> "16.365.637-k"
Rutcl::Rut.format_rut_with_dv("14569484-1")
#=> "14.569.484-1"
Rutcl::Rut.format_rut_with_dv("14569484-0")
ArgumentError: "El rut 14569484-0 es inválido"
Rutcl::Rut.format_rut_with_dv("14569484-0", false)
#=> "14.569.484-0"
# Formateo para RUTs que **NO** incluyen dígito verificador
Rutcl::Rut.format_rut_without_dv("16365637")
#=> "16.365.637-k"
Rutcl::Rut.format_rut_without_dv("14569484")
#=> "14.569.484-1"Changelog
Versión 1.1.0 (2013-11-04)
- El método
prettyes eliminado. En su lugar se crean dos métodos,format_rut_without_dv(rut)yformat_rut_with_dv(rut, validate=true).