Module: DecoLite::FieldConflictable
- Includes:
- FieldsOptionable
- Included in:
- FieldCreatable
- Defined in:
- lib/deco_lite/field_conflictable.rb
Overview
Defines methods to to manage fields that conflict with existing model attributes.
Constant Summary
Constants included from FieldsOptionable
DecoLite::FieldsOptionable::OPTION_FIELDS, DecoLite::FieldsOptionable::OPTION_FIELDS_DEFAULT, DecoLite::FieldsOptionable::OPTION_FIELDS_MERGE, DecoLite::FieldsOptionable::OPTION_FIELDS_STRICT, DecoLite::FieldsOptionable::OPTION_FIELDS_VALUES
Instance Method Summary collapse
Instance Method Details
#field_conflict?(field_name:) ⇒ Boolean
19 20 21 |
# File 'lib/deco_lite/field_conflictable.rb', line 19 def field_conflict?(field_name:) respond_to? field_name end |
#validate_field_conflicts!(field_name:, options:) ⇒ Object
11 12 13 14 15 16 17 |
# File 'lib/deco_lite/field_conflictable.rb', line 11 def validate_field_conflicts!(field_name:, options:) return unless .strict? && field_conflict?(field_name: field_name) raise "Field '#{field_name}' conflicts with existing attribute; " \ 'this will raise an error when running in strict mode: ' \ "options: { #{OPTION_FIELDS}: :#{OPTION_FIELDS_STRICT} }." end |