Class: ActiveRecord::ConnectionAdapters::MysqlColumnWithEnum

Inherits:
Mysql2Column
  • Object
show all
Includes:
ActiveRecordEnumerations::Column
Defined in:
lib/enum_column/mysql_adapter.rb,
lib/enum_column/mysql2_adapter.rb

Instance Method Summary collapse

Methods included from ActiveRecordEnumerations::Column

included, #klass, #native_database_types, #simplified_type, #type_cast, #type_cast_code, value_to_symbol

Constructor Details

#initialize(name, default, sql_type = nil, null = true) ⇒ MysqlColumnWithEnum

Returns a new instance of MysqlColumnWithEnum.



24
25
26
27
28
29
30
# File 'lib/enum_column/mysql_adapter.rb', line 24

def initialize(name, default, sql_type = nil, null = true)
  if sql_type =~ /^enum/i
    values = sql_type.sub(/^enum\('([^)]+)'\)/i, '\1').split("','").map { |v| v.intern }
    default = default.intern if default and !default.empty?
  end
  super(name, default, sql_type, null, values)
end