Рельсы сотовый камень не делают html
Наш проект рельсов теперь использует ячейку.
https://github.com/trailblazer/cells
Но этот драгоценный камень по умолчанию не экранирует HTML от версии 4.0.
http://trailblazer.to/gems/cells/cells4.html
Ячейки по умолчанию не экранируют HTML. Однако вы можете столкнуться с проблемами при использовании помощников Rails. Внутренне эти помощники часто слепо убегают. Это не ошибка Cells, а недостаток дизайна в Rails.
Все, что связано с #capture, вызовет проблемы - проверьте это в качестве примера. Как видите, это Rails, размахивающий спасательным молотом. Пожалуйста, не обвиняйте нас в побегах, где они не должны быть. Скорее откройте проблему на Rails и скажите им, чтобы их код был лучше перезаписываемым для нас. ```
Это хорошо для скорости рендеринга, но если я пропустил использование html_escape для некоторого входного содержимого, это вызовет проблему безопасности.
<%= '<script>alert("hello")</script>' %>
В клеточном геме этот скрипт будет проблемой безопасности.
Есть ли какой-нибудь способ сделать html escape по умолчанию с помощью ячейки, например, rails default.
Я пытаюсь переопределить метод рендеринга gem, но это не очень хорошая идея для обслуживания.