Class: ActiveRecord::Has::SparseAttributes::ColumnStorageConfig

Inherits:
StorageConfig
  • Object
show all
Defined in:
lib/active_record/has/sparse_attributes/column_storage.rb

Instance Attribute Summary collapse

Attributes inherited from StorageConfig

#model_class, #serialize_values

Instance Method Summary collapse

Constructor Details

#initialize(klass, options = {}) ⇒ ColumnStorageConfig

Returns a new instance of ColumnStorageConfig.



8
9
10
11
12
13
14
15
16
# File 'lib/active_record/has/sparse_attributes/column_storage.rb', line 8

def initialize(klass, options = {})
	super
	@column_name = options[:column_name] || 'sparse_attributes'
	serialize_class = options[:serialize_class]
	if serialize_class != false
		@model_class.class_eval "serialize '#{@column_name}'" + 
			(serialize_class ? ", #{serialize_class.to_s}" : '')
	end
end

Instance Attribute Details

#column_nameObject

Returns the value of attribute column_name.



6
7
8
# File 'lib/active_record/has/sparse_attributes/column_storage.rb', line 6

def column_name
  @column_name
end

Instance Method Details

#instance(record) ⇒ Object



18
19
20
# File 'lib/active_record/has/sparse_attributes/column_storage.rb', line 18

def instance(record)
	ColumnStorage.new(record, self)
end