ActiveSupport es el único bastidor de Rails que admite los componentes individuales de recolección de cerezas. Los otros marcos, incluyendo ActionView, deben ser requeridos en masa:
require 'action_view'
Tenga en cuenta que este requiere no necesariamente va a cargar todos ActionView. Salvo en situaciones en las que la seguridad de las hebras requiere que las autocargadas sucedan con entusiasmo, simplemente configura las autocarga y requiere dependencias comunes. Eso significa que si sigue los requisitos, si hace referencia, p. ActionView::Helpers::SanitizeHelper
, provocará que se requiera action_view/helpers /sanitize_helper.rb
.
Por lo tanto la forma correcta, con el apoyo para lograr lo que deseo usando ActionView es la siguiente:
require 'action_view'
class Test < Test::Unit::TestCase # or whatever
include ActionView::Helpers::SanitizeHelper
def my_test
assert_equal "lol", strip_tags("<b>lol</b>")
end
end
Esto no está bien documentada; Basé esta respuesta principalmente en the discussion on this issue.
Nunca se sabe lo que harán los navegadores si solo pone un soporte de apertura sin cerrarlo alguna vez; Definitivamente no asumiría que la solución 'gsub' es segura a menos que pones un' .gsub (/ [<>] /, '') 'extra al final. (Y aun así no lo responderé). –
+1 para el comentario de Nokogiri. Eso funciona perfectamente para mis necesidades. –
Nokogiri es la herramienta adecuada para el trabajo. – superluminary