Module: ReactiveRecord::BackingRecordInspector
- Included in:
- Base
- Defined in:
- lib/reactive_record/active_record/reactive_record/backing_record_inspector.rb
Overview
inspection_details is used by client side ActiveRecord::Base runs down the possible states of a backing record and returns the appropriate string. The order of execution is important!
Instance Method Summary collapse
- #destroyed_details ⇒ Object
- #dirty_details ⇒ Object
- #error_details ⇒ Object
- #inspection_details ⇒ Object
- #loading_details ⇒ Object
- #new_details ⇒ Object
Instance Method Details
#destroyed_details ⇒ Object
24 25 26 |
# File 'lib/reactive_record/active_record/reactive_record/backing_record_inspector.rb', line 24 def destroyed_details "[destroyed id: #{id}]" end |
#dirty_details ⇒ Object
32 33 34 |
# File 'lib/reactive_record/active_record/reactive_record/backing_record_inspector.rb', line 32 def dirty_details "[changed id: #{id} #{changes}]" end |
#error_details ⇒ Object
15 16 17 18 |
# File 'lib/reactive_record/active_record/reactive_record/backing_record_inspector.rb', line 15 def error_details id_str = "id: #{id} " unless new? "[errors #{id_str}#{errors.}]" end |
#inspection_details ⇒ Object
6 7 8 9 10 11 12 13 |
# File 'lib/reactive_record/active_record/reactive_record/backing_record_inspector.rb', line 6 def inspection_details return error_details unless errors.empty? return new_details if new? return destroyed_details if destroyed return loading_details unless @attributes.key? primary_key return dirty_details unless changed_attributes.empty? "[loaded id: #{id}]" end |
#loading_details ⇒ Object
28 29 30 |
# File 'lib/reactive_record/active_record/reactive_record/backing_record_inspector.rb', line 28 def loading_details "[loading #{vector}]" end |
#new_details ⇒ Object
20 21 22 |
# File 'lib/reactive_record/active_record/reactive_record/backing_record_inspector.rb', line 20 def new_details "[new #{attributes.select { |attr| column_type(attr) }}]" end |