Я работаю с Ruby on Rails. Есть ли способ отделить html
строку с помощью метода sanitize или equal и сохранить только текст внутри атрибута value во входном теге?
html
ruby
string
ruby-on-rails-3
Маттиас
источник
источник
text.strip
работаетОтветы:
Есть
strip_tags
методActionView::Helpers::SanitizeHelper
:http://api.rubyonrails.org/classes/ActionView/Helpers/SanitizeHelper.html#method-i-strip_tags
Изменить: для получения текста внутри атрибута значения вы можете использовать что-то вроде Nokogiri с выражением Xpath, чтобы получить его из строки.
источник
Если мы хотим использовать это в модели
это код в методе "strip_tags"
источник
require 'html/sanitizer'
создать собственное дезинфицирующее средствоHTML::FullSanitizer.new
.require 'html/sanitizer'
вызывает ошибку, поэтому я должен использовать:Rails::Html::FullSanitizer.new
( edgeapi.rubyonrails.org/classes/HTML/… )Да, назовите это:
sanitize(html_string, tags:[])
источник
Белый список тегов и атрибутов можно указать, как показано ниже.
Вышеуказанный оператор позволяет использовать теги img , br и p, а также атрибуты src и style .
источник
Я использовал библиотеку Loofah, так как она подходит как для HTML, так и для XML (как для документов, так и для фрагментов строк). Это движок драгоценного камня html sanitizer. Я просто вставляю пример кода, чтобы показать, насколько просто его использовать.
Драгоценный камень люфы
источник
Как насчет этого?
источник
Rails::Html::FullSanitizer.new
если вы не хотите указывать белый список.