我在数据库中有一个已经进行 HTML 转义的字符串列表。例如,我有Kind of Business™
.
这适用于使用raw
或直接打印 HTML 文档html_safe
,不幸的是,当我在地图标记中使用该字符串时,Google Maps API 不需要转义字符串来像 HTML 文档那样工作。
Rails 有没有办法渲染转义的内容,然后将其传递给谷歌地图?
编辑:现在使用:
<%=raw HTMLEntities.new.decode(str) %>
我在数据库中有一个已经进行 HTML 转义的字符串列表。例如,我有Kind of Business™
.
这适用于使用raw
或直接打印 HTML 文档html_safe
,不幸的是,当我在地图标记中使用该字符串时,Google Maps API 不需要转义字符串来像 HTML 文档那样工作。
Rails 有没有办法渲染转义的内容,然后将其传递给谷歌地图?
编辑:现在使用:
<%=raw HTMLEntities.new.decode(str) %>
使用这个宝石:
http://github.com/threedaymonk/htmlentities
用于解码:
HTMLEntities.new.decode "Business™"
=> "Business™"
对于编码:
HTMLEntities.new.encode "Business™"
=> "Business™"
CGI.unescapeHTML("test "unescaping" <characters>")
没有外部宝石:
CGI.escape 'https://google.com' # returns 'https%3A%2F%2Fgoogle.com'
反过来就很容易猜到了:
CGI.unescape 'https%3A%2F%2Fgoogle.com' # returns 'https://google.com'
注意 CGI.unescapeHTML 似乎只适用于 HTML 标记,不适用于简单的字符串。