Class: WebammToRails::Sources::Models::EnumDefinition::Presenter

Inherits:
Object
  • Object
show all
Defined in:
lib/webamm_to_rails/sources/models/enum_definition/presenter.rb

Instance Method Summary collapse

Constructor Details

#initialize(column:) ⇒ Presenter

Returns a new instance of Presenter.



6
7
8
# File 'lib/webamm_to_rails/sources/models/enum_definition/presenter.rb', line 6

def initialize(column:)
  @column = column
end

Instance Method Details

#renderObject



10
11
12
13
14
# File 'lib/webamm_to_rails/sources/models/enum_definition/presenter.rb', line 10

def render
  base_def = "enum :#{@column.name}, { #{@column.values.map(&:underscore).map.with_index { |val, i| "#{val}: #{i}" }.join(', ')} }"
  base_def += ", default: :#{@column.default}" if @column.default.present?
  base_def
end