Sha256: fa3db00bffc918f1d99ca1f6f8bf9ccdd594482406f8b65a109f14116dc41f36

Contents?: true

Size: 786 Bytes

Versions: 1

Compression:

Stored size: 786 Bytes

Contents

require 'rails/generators'

module Hancock::Catalog::Models
  class DecoratorsGenerator < Rails::Generators::Base
    source_root File.expand_path('../../../../../../app/models/concerns/hancock/catalog/decorators', __FILE__)
    argument :models, type: :array, default: []

    desc 'Hancock::Catalog Models generator'
    def decorators
      copied = false
      (models == ['all'] ? permitted_models : models & permitted_models).each do |m|
        copied = true
        copy_file "#{m}.rb", "app/models/concerns/hancock/catalog/decorators/#{m}.rb"
      end
      puts "U need to set model`s name. One of this: #{permitted_models.join(", ")}." unless copied
    end

    private
    def permitted_models
      ['category', 'item', 'category_image', 'item_image']
    end

  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
hancock_cms_catalog-1.0.2 lib/generators/hancock/catalog/models/decorators_generator.rb