Module: ActiveRecord::AttributeMethods::Write

Extended by:
ActiveSupport::Concern
Defined in:
lib/active_record/attribute_methods/write.rb

Defined Under Namespace

Modules: ClassMethods

Constant Summary collapse

WriterMethodCache =
Class.new(AttributeMethodCache) {
  private

  def method_body(method_name, const_name)
    "    def \#{method_name}(value)\n      name = ::ActiveRecord::AttributeMethods::AttrNames::ATTR_\#{const_name}\n      write_attribute(name, value)\n    end\n    EOMETHOD\n  end\n}.new\n"

Instance Method Summary collapse

Instance Method Details

#raw_write_attribute(attr_name, value) ⇒ Object



61
62
63
# File 'lib/active_record/attribute_methods/write.rb', line 61

def raw_write_attribute(attr_name, value)
  write_attribute_with_type_cast(attr_name, value, :raw_type_cast_attribute_for_write)
end

#write_attribute(attr_name, value) ⇒ Object

Updates the attribute identified by attr_name with the specified value. Empty strings for fixnum and float columns are turned into nil.



57
58
59
# File 'lib/active_record/attribute_methods/write.rb', line 57

def write_attribute(attr_name, value)
  write_attribute_with_type_cast(attr_name, value, :type_cast_attribute_for_write)
end