Sha256: 93c78b3c21cafc72f9e5d3da4fda3533738b8d22be5e33e73ccdc9edcc717c49

Contents?: true

Size: 675 Bytes

Versions: 2

Compression:

Stored size: 675 Bytes

Contents

module BasicPresenter
  module Generators
    class PresenterGenerator < Rails::Generators::NamedBase

      check_class_collision suffix: "Presenter"

      def create_presenter_file
        create_file "app/presenters/#{file_name}_presenter.rb", <<-FILE
  class #{class_name}Presenter < ApplicationPresenter
    presents :#{plural_name.singularize}

    # Methods delegated to Presented Class #{class_name} object's #{plural_name.singularize}
    @delegation_methods = []

    delegate *@delegation_methods, to: :#{plural_name.singularize}

    # Start the methods
    # def full_name
    #   first_name + last_name
    # end
  end
        FILE
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
basic_presenter-0.0.3 lib/generators/basic_presenter/presenter_generator.rb
basic_presenter-0.0.2 lib/generators/basic_presenter/presenter_generator.rb