13

我想允许几个特定的​​标签,比如 ( <br>),但让 rails 继续逃避其他标签。Html_safe 似乎不接受任何参数。最顺利的方法是什么?

4

2 回答 2

21

sanitize helper 将对所有标签进行 html 编码并去除所有未明确允许的属性。

sanitize @article.body, :tags => %w(br)

链接到API 文档

于 2013-09-18T14:43:00.630 回答
0

就我而言,我想清理特定的字符串。我做的:

white_list_sanitizer = Rails::Html::WhiteListSanitizer.new
my_string = white_list_sanitizer.sanitize(my_string, tags: %w(br))

如果您希望标签仅具有允许的属性,请执行以下操作:

my_string = white_list_sanitizer.sanitize(my_string, tags: %w(meta), attributes: %w(name content))

非常易于使用且功能强大的解决方案。

有关白名单消毒剂的更多信息。

于 2018-04-10T23:03:47.780 回答