diff --git a/lib/rabl-rails/responder.rb b/lib/rabl-rails/responder.rb index 0a03c3c..997bf80 100644 --- a/lib/rabl-rails/responder.rb +++ b/lib/rabl-rails/responder.rb @@ -5,10 +5,15 @@ module RablRails # representation but instead use a rabl template # class Responder < ActionController::Responder + def initialize(controller, resources, options = {}) + super + @api_template = @controller.respond_to?(:responder_default_template, true) ? controller.send(:responder_default_template) : nil + end + protected def api_behavior(error) - rabl_options = options.merge(template: RablRails.responder_default_template) + rabl_options = options.merge(template: @api_template || RablRails.responder_default_template) if get? controller.default_render rabl_options