Module: ActiveRecord::Exnum
- Defined in:
- lib/exnum/active_record/exnum.rb
Defined Under Namespace
Modules: ClassMethods
Class Method Summary collapse
Instance Method Summary collapse
-
#exnum(definitions) ⇒ Object
————————————————————————–.
- #inherited(base) ⇒ Object
Class Method Details
.prepended(base) ⇒ Object
3 4 5 |
# File 'lib/exnum/active_record/exnum.rb', line 3 def self.prepended(base) base.singleton_class.class_eval { self.prepend(ClassMethods) } end |
Instance Method Details
#exnum(definitions) ⇒ Object
21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
# File 'lib/exnum/active_record/exnum.rb', line 21 def exnum(definitions) divided_definitions = definitions.inject({enums: {}, params: {}}) do |ret, (name, values)| if !values.kind_of?(Hash) ret[:enums][name] = values else ret[:enums][name] = extract_enums(name, values) ret[:params][name] = extract_params(name, values) end ret end enum(divided_definitions[:enums]) enum_i18n(divided_definitions[:enums]) enum_param(divided_definitions[:params]) end |
#inherited(base) ⇒ Object
14 15 16 17 |
# File 'lib/exnum/active_record/exnum.rb', line 14 def inherited(base) base.defined_params = defined_params.deep_dup super end |