Module: EnumI18n

Extended by:
ActiveSupport::Concern
Defined in:
lib/enum-i18n.rb,
lib/enum-i18n/version.rb

Constant Summary collapse

VERSION =
"0.1.0"

Instance Method Summary collapse

Instance Method Details

#set_enum_textObject



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

def set_enum_text
  name = model_name.try(:i18n_key).to_s
  defined_enums.each do |enum|
    enum_column = enum.first
    class_eval <<-METHOD
      def #{enum_column}_text(scope=nil)
        scope ||= 'activerecord.enum.#{name}.#{enum_column}'
        I18n.t(#{enum_column}, scope: scope)
      end
    METHOD
  end
end