Class | Mongoid::Validations::UniquenessValidator |
In: |
lib/mongoid/validations/uniqueness.rb
|
Parent: | ActiveModel::EachValidator |
Validates whether or not a field is unique against the documents in the database.
@example Define the uniqueness validator.
class Person include Mongoid::Document field :title validates_uniqueness_of :title end
klass | [R] |
Unfortunately, we have to tie Uniqueness validators to a class.
@example Setup the validator.
UniquenessValidator.new.setup(Person)
@param [ Class ] klass The class getting validated.
@since 1.0.0
Validate the document for uniqueness violations.
@example Validate the document.
validate_each(person, :title, "Sir")
@param [ Document ] document The document to validate. @param [ Symbol ] attribute The field to validate on. @param [ Object ] value The value of the field.
@return [ Errors ] The errors.
@since 1.0.0
Should the uniqueness validation be case sensitive?
@example Is the validation case sensitive?
validator.case_sensitive?
@return [ true, false ] If the validation is case sensitive.
@since 2.3.0
Get the default criteria for checking uniqueness.
@example Get the criteria.
validator.criterion(person, :title, "Sir")
@param [ Document ] document The document to validate. @param [ Symbol ] attribute The name of the attribute. @param [ Object ] value The value of the object.
@return [ Criteria ] The uniqueness criteria.
@since 2.3.0
Filter the value based on whether the check is case sensitive or not.
@example Filter the value.
validator.filter("testing")
@param [ Object ] value The value to filter.
@return [ Object, Regexp ] The value, filtered or not.
@since 2.3.0
Should validation be skipped?
@example Should the validation be skipped?
validator.skip_validation?(doc)
@param [ Document ] document The embedded document.
@return [ true, false ] If the validation should be skipped.
@since 2.3.0