lib/action_view/template_handlers/builder.rb in actionpack-2.0.5 vs lib/action_view/template_handlers/builder.rb in actionpack-2.1.0

- old
+ new

@@ -1,19 +1,27 @@ require 'builder' module ActionView module TemplateHandlers class Builder < TemplateHandler + include Compilable + def self.line_offset 2 end def compile(template) content_type_handler = (@view.send!(:controller).respond_to?(:response) ? "controller.response" : "controller") "#{content_type_handler}.content_type ||= Mime::XML\n" + - "xml = Builder::XmlMarkup.new(:indent => 2)\n" + - template + + "xml = ::Builder::XmlMarkup.new(:indent => 2)\n" + + template.source + "\nxml.target!\n" + end + + def cache_fragment(block, name = {}, options = nil) + @view.fragment_for(block, name, options) do + eval('xml.target!', block.binding) + end end end end end