Module: ApplicationPresenter::ViewHelpers

Defined in:
lib/application_presenter/view_helpers.rb

Instance Method Summary collapse

Instance Method Details

#present(object, klass = nil) {|presenter| ... } ⇒ Object

Yields:

  • (presenter)


3
4
5
6
7
8
9
10
11
12
# File 'lib/application_presenter/view_helpers.rb', line 3

def present(object, klass = nil)
  # TODO: use Factory pattern, let presenters register themselves
  # in Presenter class
  # ApplicationPresenter::Factory.register(self, "content_newsletter")
  # klass ||= ApplicationPresenter::Factory.build_for(object)
  klass ||= "#{object.class}Presenter".constantize
  presenter = klass.new(object, self)
  yield presenter if block_given?
  presenter
end