Module: ApplicationHelper
- Defined in:
- lib/application_helper.rb
Instance Method Summary collapse
Instance Method Details
#present(object_or_class, klass = nil) {|presenter| ... } ⇒ Object
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
# File 'lib/application_helper.rb', line 2 def present(object_or_class, klass = nil) presenter = nil if object_or_class.methods.include?(:new) klass ||= "#{object_or_class}Presenter".constantize presenter = klass presenter.initialize(object_or_class, self) else klass ||= "#{object_or_class.class}Presenter".constantize presenter = klass.new(object_or_class, self) end yield presenter if block_given? #block.arity > 0 ? yield(presenter) : presenter.instance_eval(&block) return presenter end |