Вставить в рельсы с Nokogiri - PullRequest
       5

Вставить в рельсы с Nokogiri

0 голосов
/ 16 сентября 2010

Мне нужно вставить символ nbsp в некоторые места HTML, который исходит из БД и будет отображаться на странице.

Я делаю следующее:

doc = Nokogiri::HTML( self.content )
doc.css("p").each do |p|
    p.content.gsub! pattern, " "
end

Этот результирующий текстсодержит nbsp, отображаемый как обычный текст, но не как специальный символ.

Я также попытался использовать следующее:

p.content.gsub! pattern, "\u00A0"
p.content.gsub! pattern, " "
p.content.gsub! pattern, 160.chr # paragraph disappears in this case
p.content.gsub! pattern, "\240"  # paragraph disappears in this case

Но все они не работают.

Похоже, что методы «содержимого» узла Nokogiri экранируют специальные символы, изменяя содержимое или inner_text.

Есть ли способ получить доступ к содержимому необработанного узла?

1 Ответ

2 голосов
/ 16 сентября 2010

Просто угадай - может p.content.gsub! pattern, " ".html_safe может помочь?

...