Очистить проблему с драгоценными камнями с помощью & lt; и & gt;

Я использую geit sanitize https://github.com/rgrove/sanitize чтобы удалить некоторые HTML-теги из строки.

Однако перед очисткой строки в моем контроллере строка устанавливается следующим образом:

<p>This is &lt;b&gt;bold&lt;/b&gt; and this <span style="text-decoration: underline;">is</span> &lt;i&gt;italics&lt;/i&gt; ok? This <em>is not </em>a problem.</p>

Это означает, что <и> заменяются &lt; а также &gt;,

Как я могу использовать гем sanitize для удаления, например, и когда эти теги представлены как &lt;i&gt; а также &lt;/i&gt; в контроллере?

1 ответ

Решение

Если вы хотите, чтобы экранированные теги HTML (<и>) рассматривались как HTML в целях очистки, вам сначала нужно их удалить:

требует 'CGI'
Sanitize.clean(CGI.unescapeHTML(your_string))
Другие вопросы по тегам