Module: Mongoid::Enum::ClassMethods

Defined in:
lib/mongoid/enum.rb

Instance Method Summary collapse

Instance Method Details

#enum(name, values, options = {}) ⇒ Object



10
11
12
13
14
15
16
17
18
19
20
21
# File 'lib/mongoid/enum.rb', line 10

def enum(name, values, options = {})
  field_name = :"#{Mongoid::Enum.configuration.field_name_prefix}#{name}"
  options = default_options(values).merge(options)

  set_values_constant name, values

  create_field field_name, options
  alias_attribute name, field_name

  create_validations field_name, values, options
  define_value_scopes_and_accessors field_name, values, options
end