Skip to content
master
Switch branches/tags
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
lib
 
 
 
 
 
 
 
 
 
 
 
 
 
 

KawaiiValidation

Build Status

An ActiveRecord extension that adds more kawaii validation syntax.

Motivation

The "Sexy Validation" syntax is not at all sexy.

Installation

Gemfile:

gem 'kawaii_validation'

And then execute:

$ bundle

Supported versions

  • Ruby 2.0, 2.1, 2.2, 2.3, 2.4, and 2.5 (trunk)

  • Rails 3.2.x, 4.0, 4.1, 4.2, 5.0, 5.1, and 5.2 (edge)

Usage

With this gem bundled, the validates method takes a block argument, and the following two new DSLs will be enabled:

  • Original code (so-called "Sexy Validation")
class User < ActiveRecord::Base
  # validations begin
  validates :name, :age, presence: true
  validates :name, length: {maximum: 255}
  validates :age, numericality: {greater_than: 0}
  # validations end

  ...
end
  • validates + block
class User < ActiveRecord::Base
  validates do
    presence_of :name, :age
    length_of :name, maximum: 255
    numericality_of :age, greater_than: 0
  end

  ...
end
  • validates + attributes + block
class User < ActiveRecord::Base
  validates :name do
    presence
    length maximum: 255
  end

  validates :age do
    presence
    numericality greater_than: 0
  end

  ...
end

Contributing

  • Send me your pull requests!

About

An ActiveRecord extension that adds more kawaii validation syntax

Resources

License

Packages

No packages published

Languages