Module: AttributeMethods::Read::ClassMethods

Includes:
ActiveRecord::AttributeMethods::Read::ClassMethods
Defined in:
lib/safe_column/attribute_methods/read.rb

Instance Method Summary collapse

Instance Method Details

#internal_attribute_access_code(attr_name, cast_code) ⇒ Object



8
9
10
11
12
13
14
15
16
17
18
19
20
# File 'lib/safe_column/attribute_methods/read.rb', line 8

def internal_attribute_access_code(attr_name, cast_code)
  code = original_internal_attribute_access_code(attr_name, cast_code)

  unless cache_attribute? attr_name
    lines = code.split(";")
    old_return_value = lines.pop
    lines << "r = (#{old_return_value})"
    lines << "is_safe_string_column?(r, attr_name) ? ActiveSupport::SafeBuffer.new(r): r"
    lines.join(";")
  else
    code
  end
end

#original_internal_attribute_access_codeObject



6
# File 'lib/safe_column/attribute_methods/read.rb', line 6

alias_method :original_internal_attribute_access_code, :internal_attribute_access_code