Class: ActiveRecord::Enumerations::Factory
Class Method Summary
collapse
Instance Method Summary
collapse
add_option, extract_values_and_options
Constructor Details
#initialize(values, options, &block) ⇒ Factory
Returns a new instance of Factory.
11
12
13
14
15
16
17
|
# File 'lib/ar_enums/factory.rb', line 11
def initialize values, options, &block
@values, @options, @block = values, options, block
@active_record = @options.delete :active_record
@field = @options.delete :field
@class_name = @options.delete(:class_name) || @field.name.camelize
@label_method = @options.delete(:label) || :desc
end
|
Class Method Details
.make_enums(*config, &block) ⇒ Object
6
7
8
9
|
# File 'lib/ar_enums/factory.rb', line 6
def self.make_enums *config, &block
values, options = extract_values_and_options config
new(values, options, &block).make_enums
end
|
Instance Method Details
#enum_class ⇒ Object
27
28
29
|
# File 'lib/ar_enums/factory.rb', line 27
def enum_class
@enum_class ||= eval_external_class || create_inner_enum_class
end
|
#make_enums ⇒ Object
19
20
21
22
23
24
25
|
# File 'lib/ar_enums/factory.rb', line 19
def make_enums
enum_class.label_method = @label_method
create_enums.tap do |enums|
define_question_methods enums
define_extra_columns_methods enums
end
end
|