Ruby on Rails ActiveRecord Validations Validate uniqueness of an attribute


Example

This helper validates that the attribute's value is unique right before the object gets saved.

class Account < ApplicationRecord
  validates :email, uniqueness: true
end

There is a :scope option that you can use to specify one or more attributes that are used to limit the uniqueness check:

class Holiday < ApplicationRecord
  validates :name, uniqueness: { scope: :year,
    message: "should happen once per year" }
end

There is also a :case_sensitive option that you can use to define whether the uniqueness constraint will be case sensitive or not. This option defaults to true.

class Person < ApplicationRecord
  validates :name, uniqueness: { case_sensitive: false }
end