Rails Cheat Sheet: Active Record Validations

Active Record offers many pre-defined validation helpers that you can use directly inside your class definitions. These helpers provide common validation rules.

  • acceptance: validates that a checkbox on the user interface was checked when a form is submitted.
  • validated_associated: ensures valid? is called on associated models.
  • confirmation: ensures two text fields contain exactly the same data. This validation creates a virtual attribute with “_confirmation” appended to the field name. Useful for email and password validations.
  • inclusion: ensures an attribute’s value is within a given set. The set may be an enumerable object.
  • exclusion: ensures an attribute’s value is not within a given set. The set may be an enumerable object.
  • format: ensures an attribute’s value matches a regular expression specified using the :with option.
  • length: ensures an attribute’s value falls within, under, over or is exactly the specified length.
  • numericality: ensures an attribute’s value contains only numeric characters.
  • presence: ensures an attribute’s value is not empty.
  • absence: ensures an attribute’s value is empty.
  • uniqueness: ensures an attribute’s value is unique right before it is saved. It does not create a unique constraint in the database so concurrent connections may create duplicates.
  • validates_with: this helper passes the record to another class for validation.
  • validates_each: this helper validates each attribute against a block.

Check out the documentation for more information.