【问题标题】:How to prevent Haml from escaping HTML when joining?加入时如何防止Haml转义HTML?
【发布时间】:2014-07-29 23:39:57
【问题描述】:

我想显示一系列用逗号分隔的链接,所以我的 HAML 代码如下所示:

- links = []
- links.append(link_to ...)
- if something
  - links.append(link_to ...)
= links.join(,)

问题在于 Haml 转义了生成的 html 中的链接:

<a href="

这样链接就显示出来了:

而不是由浏览器解释。

我了解html_safe 用于防止转义,但不知道如何将其与join 结合使用。我正在使用 haml 4.0.5 和 haml-rails 0.5.3。

【问题讨论】:

    标签: ruby-on-rails haml


    【解决方案1】:

    虽然数组的每个条目都是 html 安全的,但 join 的结果却不是。解决方案就是在最终结果上调用html_safe

    = links.join(', ').html_safe
    

    【讨论】:

    • 确实如此!非常感谢。
    【解决方案2】:

    你能试试这个吗:

    - links = []
    - links.append(link_to(...).html_safe)
    - if something
      - links.append(link_to(...).html_safe)
    = links.join(,)
    

    【讨论】:

    • 这似乎没有帮助。
    猜你喜欢
    • 2021-09-10
    • 1970-01-01
    • 2014-01-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-02-22
    • 1970-01-01
    • 2012-02-13
    相关资源
    最近更新 更多