2010-10-05 34 views
1

我寫助手來解析HTML表頭如何使這個函數html_safe?

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 

回答

2

concat?在映射陣列上使用join,看看會發生什麼。

+0

謝謝加入解決了這個問題。但我仍然不明白爲什麼concat搞砸了一些東西。你能爲我清理嗎? – 2010-10-05 19:54:56

+0

總之:沒有。我從未使用過'concat'。 ;-) – Reactormonk 2010-10-05 20:09:27