Sha256: 166b2d147755ef511ce892fbfa37ad8adee30d14a2f099edf30baea81610f46e
Contents?: true
Size: 903 Bytes
Versions: 1
Compression:
Stored size: 903 Bytes
Contents
module ActiveData module Model module Attributes class ReferenceOne < Base def write value pollute do previous = type_casted_value result = write_value value if (!value.nil? && type_casted_value.nil?) || type_casted_value != previous association.reset end result end end def read if association.target association.identify else type_casted_value end end def read_before_type_cast @value_cache end private def type_casted_value variable_cache(:value) do typecast(read_before_type_cast) end end def association @association ||= owner.association(reflection.association) end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
active_data-1.0.0 | lib/active_data/model/attributes/reference_one.rb |