Rails 3 を使用しています。ヘルパーでこれを実行しようとしています。
def headers collection
collection.each do |col|
content_tag(:th, col.short_name)
end
end
ご覧のとおり、これは content_tag を<th>
実行してコレクション内の各要素のタグを生成するという考え方です。HTMLはRailsによって安全に作成されているため、HTMLとして機能しないため、これは機能しません。
これを次のように変更すると:
def headers collection
collection.each do |col|
concat (content_tag(:th, col.short_name))
end
end
これはよりうまく機能します。HTML で正しいマークアップを取得しますが、その前にすべてのマークアップ HTML を安全に取得します。だから私は近いと思います。
これを行うには他の方法があることは知っていますが、正しいエレガントな方法でこれを行いたいと思いました。私は何が欠けていますか?