lib/ruhl/rails/ruhl_presenter.rb in ruhl-1.3.0 vs lib/ruhl/rails/ruhl_presenter.rb in ruhl-1.3.1

- old
+ new

@@ -45,16 +45,19 @@ class Base protected def present(options = {}) - action_sym = options[:action] || action_name - object_sym = options[:object] || controller_name.singularize - controller_sym = options[:controller] || controller_name + controller_option = options.delete(:controller) + action_sym = options.delete(:action) || action_name + object_sym = options.delete(:object) || controller_option || controller_name.singularize + controller_sym = controller_option || controller_name - render :template => "#{controller_sym}/#{action_sym}", - :locals => {:object => presenter_for(object_sym), :layout => options[:layout] } + options[:template] = "#{controller_sym}/#{action_sym}" + options[:locals] = {:object => presenter_for(object_sym), :layout => options.delete(:layout) } + + render options end def presenter_for(object) if object.is_a?(Symbol) || object.is_a?(String)