Sha256: ca84589b915d8ab42cd3a755210bb7885bac6cf774bf380e96fc42d1d894ff90
Contents?: true
Size: 683 Bytes
Versions: 3
Compression:
Stored size: 683 Bytes
Contents
require 'active_support/concern' require 'active_model/dirty' require 'active_attr' # Overwritting ActiveAttr module module ActiveAttr # Overwritting ActiveAttr::Dirty module module Dirty extend ActiveSupport::Concern include ActiveModel::Dirty # Class methods for ActiveAttr::Dirty module module ClassMethods # Overwritten attribute! method # @param [Symbol] name # @param [Hash] options def attribute!(name, options = {}) super(name, options) define_method("#{name}=") do |value| send("#{name}_will_change!") unless value == read_attribute(name) super(value) end end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
syncano-4.0.0.alpha1 | lib/active_attr/dirty.rb |
syncano-4.0.0.alpha | lib/active_attr/dirty.rb |
syncano-4.0.0.pre | lib/active_attr/dirty.rb |