Module: PgActiveRecordEnum::Schema::TableDefinition

Defined in:
lib/pg_activerecord_enum/schema.rb

Instance Method Summary collapse

Instance Method Details

#enum(*enum_names) ⇒ Object

Raises:

  • (ArgumentError)


43
44
45
46
47
48
49
50
51
52
53
# File 'lib/pg_activerecord_enum/schema.rb', line 43

def enum(*enum_names)
  options = enum_names.extract_options!
  values = options.delete(:values)

  raise ArgumentError, 'Please specify values for enum in your migration.' if values.blank?

  enum_names.each do |enum_name|
    PgActiveRecordEnum.define enum_name, values, options
    column(enum_name, enum_name, options)
  end
end