Module: Toy::Dirty
- Extended by:
- ActiveSupport::Concern
- Includes:
- ActiveModel::Dirty, Attributes, Cloneable
- Defined in:
- lib/toy/dirty.rb
Instance Method Summary
collapse
Methods included from Attributes
#[], #[]=, #attributes, #attributes=, #id, #persisted_attributes
Instance Method Details
#initialize ⇒ Object
8
9
10
11
12
|
# File 'lib/toy/dirty.rb', line 8
def initialize(*)
super
@changed_attributes.delete('id') if @changed_attributes
end
|
#initialize_copy ⇒ Object
14
15
16
17
18
19
|
# File 'lib/toy/dirty.rb', line 14
def initialize_copy(*)
super.tap do
@previously_changed = {}
@changed_attributes = {}
end
end
|
#write_attribute(name, value) ⇒ Object
21
22
23
24
25
26
|
# File 'lib/toy/dirty.rb', line 21
def write_attribute(name, value)
name = name.to_s
current = read_attribute(name)
attribute_will_change!(name) if current != value
super
end
|