Module: Super::Form::InlineErrors
- Defined in:
- lib/super/form/inline_errors.rb
Class Method Summary collapse
- .errable_fields(model_instance, column_or_association) ⇒ Object
- .error_messages(model_instance, column_or_association) ⇒ Object
Class Method Details
.errable_fields(model_instance, column_or_association) ⇒ Object
15 16 17 18 19 20 21 22 23 24 25 |
# File 'lib/super/form/inline_errors.rb', line 15 def errable_fields(model_instance, column_or_association) column_or_association = column_or_association.to_s reflection = model_instance.class.reflect_on_association(column_or_association) reflection ||= model_instance.class.reflections.values.find { |r| r.foreign_key == column_or_association } if reflection [reflection.name.to_s, reflection.foreign_key.to_s] else [column_or_association] end end |
.error_messages(model_instance, column_or_association) ⇒ Object
8 9 10 11 12 13 |
# File 'lib/super/form/inline_errors.rb', line 8 def (model_instance, column_or_association) errable_fields(model_instance, column_or_association) .flat_map { |field| Compatability.errable_fields(field) } .flat_map { |field| model_instance.errors.(field) } .uniq end |