Module: ActiveModel::Validations::HelperMethods
- Defined in:
- lib/active_model/validations/association.rb
Instance Method Summary collapse
-
#validates_association_of(*attr_names) ⇒ Object
Validates that the specified attributes and associations are not blank(as defined by Object#blank?) .
Instance Method Details
#validates_association_of(*attr_names) ⇒ Object
Validates that the specified attributes and associations are not blank(as defined by Object#blank?) . Happens by default on save. Example:
class Patient < ActiveRecord::Base
belongs_to :person
validates_association_of :person_id
end
The person_id attribute and the person association must be the object and can not be blank unless presence is false.
Configuration options:
-
:association- The association name (default is: nil). -
:blank_message- A custom error message (default is: “can’t be blank”). -
:invalid_message- A custom error message (default is: “is invalid”). -
:not_relationship_message- A custom error message (default is: “is not a relationship”). -
:on- Specifies when this validation is active. Runs in all validation contexts by default (nil), other options are:createand:update. -
:if- Specifies a method, proc or string to call to determine if the validation should occur (e.g.:if => :allow_validation, or:if => Proc.new { |user| user.signup_step > 2 }). The method, proc or string should return or evaluate to a true or false value. -
:unless- Specifies a method, proc or string to call to determine if the validation should not occur (e.g.:unless => :skip_validation, or:unless => Proc.new { |user| user.signup_step <= 2 }). The method, proc or string should return or evaluate to a true or false value. -
:strict- Specifies whether validation should be strict. SeeActiveModel::Validation#validates!for more information.
59 60 61 |
# File 'lib/active_model/validations/association.rb', line 59 def validates_association_of(*attr_names) validates_with AssociationValidator, _merge_attributes(attr_names) end |