Skip to content

MauricioMoraes/validates_cpf_cnpj

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

39 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ValidatesCpfCnpj

Description

CPF and CNPJ validations for ActiveModel and Rails.

Installation

As gem:

# in Gemfile
gem 'validates_cpf_cnpj'

# Run bundler
$ bundle install

Usage

Validating a CPF attribute:

class Patient < ActiveRecord::Base
  validates_cpf :cpf_attr
  # or
  validates :cpf_attr, :cpf => true
end

Validating a CNPJ attribute:

class Supplier < ActiveRecord::Base
  validates_cnpj :cnpj_attr
  # or
  validates :cnpj_attr, :cnpj => true
end

Validating an attribute that can store both CPF or CNPJ:

class Customer < ActiveRecord::Base
  validates_cpf_or_cnpj :cpf_cnpj_attr
  # or
  validates :cpf_cnpj_attr, :cpf_or_cnpj => true
end

Regular validation options:

:allow_nil   - Allows a nil value to be valid
:allow_blank - Allows a nil or empty string value to be valid
:if          - Executes validation when :if evaluates true
:unless      - Executes validation when :unless evaluates false
:on          - Specifies validation context (e.g :save, :create or :update). Default is :save
:message     - Sets a custom message to be passed to the attribute (default is 'is invalid')

CPF and CNPJ formatting:

When you run the validation on an attribute, if the value is a valid CPF or CNPJ, it will be formatted as so:
- valid CPF will be returned as 999.999.999-99
- valid CNPJ will be returned as 99.999.999/9999-99

Contributing

Feel free to fork, fix and send me a pull request.

Maintainers

License

Released under the MIT license:

About

CPF and CNPJ validations for ActiveModel and Rails

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Ruby 100.0%