module RedisField::ActiveRecord::ClassMethods
Public Instance Methods
has_redis_fields(*field_names)
click to toggle source
# File lib/redis_field/active_record/class_methods.rb, line 11 def has_redis_fields(*field_names) redis_fields.add(*field_names) init_redis_field_callbacks init_redis_field_accessors end
Also aliased as: has_redis_field
redis_fields()
click to toggle source
# File lib/redis_field/active_record/class_methods.rb, line 7 def redis_fields @redis_fields ||= DirtyFieldSet.new end
Private Instance Methods
init_redis_field_accessors()
click to toggle source
# File lib/redis_field/active_record/class_methods.rb, line 31 def init_redis_field_accessors redis_fields.changes.each do |field_name| method_name = :"#{field_name}_redis_value" class_eval do attr_accessor method_name end alias_method :"#{field_name}", method_name alias_method :"#{field_name}=", :"#{method_name}=" end end
init_redis_field_callbacks()
click to toggle source
# File lib/redis_field/active_record/class_methods.rb, line 21 def init_redis_field_callbacks unless @_redis_fields_callbacks_initted class_eval do after_save :sync_redis_fields! after_initialize :get_redis_fields end @_redis_fields_callbacks_initted = true end end