Sha256: 17b8c8d01e502c9fe1edd520096d8758082d0d61afc85c085896794e1c1dab61
Contents?: true
Size: 1.08 KB
Versions: 1
Compression:
Stored size: 1.08 KB
Contents
module EnumerateIt module Generators class EnumGenerator < Rails::Generators::NamedBase source_root File.expand_path('templates', __dir__) argument :attributes, type: :hash class_option :singular, type: 'string', desc: 'Singular name for i18n' class_option :lang, type: 'string', desc: 'Language to use in i18n', default: 'en' desc 'Creates a locale file on config/locales' def create_locale template 'locale.yml', File.join('config/locales', "#{singular_name}.yml") end desc 'Creates the enumeration' def create_enumerate_it template 'enumerate_it.rb', File.join('app/enumerations', "#{singular_name}.rb") end private def default_lang options[:lang] end def singular singular_name end def locale_fields attributes.map(&:name) end def fields if attributes.first.type == :string attributes.map(&:name) else attributes.map { |attribute| [attribute.name, attribute.type] } end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
enumerate_it-3.2.3 | lib/generators/enumerate_it/enum/enum_generator.rb |