2009-02-27 9 views

Respuesta

5

Esta respuesta está contenida en el enlace proporcionado por MarkusQ, pero pensé que podría deletrearlo exactamente.

tiene que modificar el código que hace que todas las etiquetas, que puede hacer que al incluir el siguiente código en algo así como lib/dont_use_xhtml.rb

module ActionView::Helpers::TagHelper 
    alias :tag_without_backslash :tag 
    def tag(name, options = nil, open = true, escape = true) 
     tag_without_backslash(name, options, open, escape) 
    end 
    end 
2

La solución no funciona con la última versión de Rails . Algunos ayudantes anularán el argumento de método abierto de 'abrir' a 'falso'.

las siguientes obras para mí en Rails 2.3.5:

module ActionView::Helpers::TagHelper 
    def tag_with_html_patch(name, options = nil, open = true, escape = true) 
    tag_without_html_patch(name, options, true, escape) 
    end 
    alias_method_chain :tag, :html_patch 
end 

poner esto en un inicializador.

0

Para rieles 2.3:

Instalar la gema haml continuación, agregue el siguiente inicializador config/initializers/force_html4.rb:

Haml::Template::options[:format] = :html4 

module StandardistaHelper 
    def tag(name, options = nil, open = false, escape = true) 
    "<#{name}#{tag_options(options, escape) if options}>" 
    end 
end 

ActionView::Base.send :include, StandardistaHelper 

ActionView::Helpers::InstanceTag.class_eval do 
    def tag_without_error_wrapping(name, options = nil, open = false, escape = true) 
    "<#{name}#{tag_options(options, escape) if options}>" 
    end 
end 
Cuestiones relacionadas