【问题标题】:How make this function html_safe?如何使这个函数 html_safe?
【发布时间】:2010-10-05 19:30:40
【问题描述】:

我正在编写帮助器来渲染 html 表头

def display_standard_table(columns)
  content_tag :table do
    content_tag :thead do
      content_tag :tr do
        concat columns.collect { |column| content_tag(:th, 'Header'.html_safe) }
      end
    end
  end
end

html 输出被转义:

<table><thead><tr>&lt;th&gt;Header&lt;/th&gt;&lt;th&gt;Header&lt;/th&gt;</tr></thead></table>

如何让它不转义?

[解决方案]

def display_standard_table(columns, objects = [])
  content_tag :table do
    content_tag :thead do
      content_tag :tr do
        columns.collect { |column| content_tag(:th, column[:display_name]) }.join()
      end
    end
  end
end

【问题讨论】:

    标签: ruby-on-rails ruby-on-rails-3


    【解决方案1】:

    concat?在映射数组上使用join 看看会发生什么。

    【讨论】:

    • 感谢的加入解决了这个问题。但我仍然不明白为什么 concat 搞砸了。你能帮我澄清一下吗?
    • 简而言之:没有。我从来没有用过concat。 ;-)
    猜你喜欢
    • 2018-07-26
    • 1970-01-01
    • 1970-01-01
    • 2010-09-13
    • 2017-02-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多