Class: ActiveRecord::Validations::PresenceValidator
- Inherits:
-
ActiveModel::Validations::PresenceValidator
- Object
- ActiveModel::Validator
- ActiveModel::EachValidator
- ActiveModel::Validations::PresenceValidator
- ActiveRecord::Validations::PresenceValidator
- Defined in:
- activerecord/lib/active_record/validations/presence.rb
Overview
:nodoc:
Instance Attribute Summary
Attributes inherited from ActiveModel::EachValidator
Attributes inherited from ActiveModel::Validator
Instance Method Summary collapse
Methods inherited from ActiveModel::Validations::PresenceValidator
Methods inherited from ActiveModel::EachValidator
#check_validity!, #initialize, #validate_each
Methods inherited from ActiveModel::Validator
Constructor Details
This class inherits a constructor from ActiveModel::EachValidator
Instance Method Details
#validate(record) ⇒ Object
4 5 6 7 8 9 10 11 12 13 14 15 |
# File 'activerecord/lib/active_record/validations/presence.rb', line 4 def validate(record) super attributes.each do |attribute| next unless record.class.reflect_on_association(attribute) associated_records = Array(record.send(attribute)) # Superclass validates presence. Ensure present records aren't about to be destroyed. if associated_records.present? && associated_records.all? { |r| r.marked_for_destruction? } record.errors.add(attribute, :blank, ) end end end |