21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
|
# File 'lib/trax/model/mti/abstract.rb', line 21
def inherited(subklass)
super(subklass)
subklass.after_create do |record|
entity_model = mti_config[:class_name].constantize.new
record.attributes.each_pair do |k,v|
entity_model.__send__("#{k}=", v) if entity_model.respond_to?(k)
end
entity_model.save
end
subklass.after_update do |record|
entity_model = record.entity
if record.changed.any?
record.changes.each_pair do |k,v|
entity_model.__send__("#{k}=", v[1]) if entity.respond_to?(:"#{k}")
end
end
entity_model.save if entity_model.changed.any?
end
subklass.after_destroy do |record|
entity_model = record.entity
entity_model.destroy
end
end
|