Class: BlockKit::Fixers::Associated
- Defined in:
- lib/block_kit/fixers/associated.rb
Instance Method Summary collapse
Methods inherited from Base
Constructor Details
This class inherits a constructor from BlockKit::Fixers::Base
Instance Method Details
#fix(model, fixing_dangerously: false) ⇒ Object
6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
# File 'lib/block_kit/fixers/associated.rb', line 6 def fix(model, fixing_dangerously: false) model.validate errors = errors_for(model) return unless errors.any? associated = model.public_send(attribute) if associated.is_a?(Enumerable) error = errors.find { |e| e.type == :invalid } return unless error error.[:invalid_values].each do |associated| associated.fix_validation_errors(dangerous: fixing_dangerously) end else associated&.fix_validation_errors(dangerous: fixing_dangerously) end end |