Sha256: 4f515abacf2ba5e24dc056a2de1a686c41eee4324c709edcfbb8034664261ab2
Contents?: true
Size: 1.15 KB
Versions: 2
Compression:
Stored size: 1.15 KB
Contents
module EnumerateIt module Generators class EnumGenerator < Rails::Generators::NamedBase source_root File.expand_path('../templates', __FILE__) argument :attributes, type: 'array', default: [] class_option :singular, type: 'string', desc: 'Singular name for i18n' class_option :lang, type: 'string', desc: 'Lang 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 an initializer file that extends ActiveRecord::Base with Enumerate_it' def create_enumerate_it template 'enumerate_it.rb', File.join('app/enumerations', "#{singular_name}.rb") end protected 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
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
enumerate_it-1.3.1 | lib/generators/enumerate_it/enum/enum_generator.rb |
enumerate_it-1.3.1.rc1 | lib/generators/enumerate_it/enum/enum_generator.rb |