3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
# File 'lib/sql_enum/class_methods.rb', line 3
def sql_enum(column_name, options = {})
enum_column = EnumColumn.new(table_name, column_name)
values = enum_column.values.to_h { |value| [value.to_sym, value.to_s] }
prefix = options.fetch(:_prefix, !!SqlEnum.configuration&.default_prefix)
suffix = options.fetch(:_suffix, !!SqlEnum.configuration&.default_suffix)
enum(column_name => values, _prefix: prefix, _suffix: suffix)
concerning "SqlEnum#{column_name.to_s.camelize}" do
define_method(column_name) { super()&.to_sym }
end
end
|