【发布时间】:2020-02-13 17:51:09
【问题描述】:
这是我没有通过 Rubocop 的代码,因为:
Rails/OutputSafety:将字符串标记为 html 安全可能存在安全风险。
def number_with_html_delimiter(num)
number_with_delimiter(num)
.gsub!(' ', content_tag(:span, "", class: "numbers-delimiter")).html_safe
end
我需要使用一些 css 放置一个自定义跨度以将空格放在 HTML 中,当我删除 html_safe 时它不起作用。
请帮忙,提前谢谢
【问题讨论】:
-
如果您不介意为所有语言环境使用
<span>分隔符,我建议使用number_with_delimiter(num, delimiter: tag.span(class: 'numbers-delimiter')).html_safe,您目前仅在语言环境使用空间限制器时插入它。即使不是这种情况,您也不希望将html_safe更改为gsub!,因为如果没有替换,gsub!会返回nil。 -
谢谢!我使用 number_with_delimiter(num, delimiter: tag.span(class: 'numbers-delimiter')) 并且它有效!
标签: ruby-on-rails ruby rubocop