railsでhashのvalueにimage_tagを入れる方法は?
Railsを使って、hashのvalueにimage_tagを入れる方法はありますでしょうか?
app/の下にview_objects/を作ってその中にviewに関するロジックをclassごとにいれています。
できるだけviewにロジックを書き込まないようにするためです。
view_objects/内のクラスで作ったインスタンス変数(hash型)をview内で展開して表示させています。
# view_objects/article_view.rb
class ArticleView
attr_reader :header
def initialize(data)
@header = {
title: data.title,
image: '= image_tag ' + data.img
}
end
end
# view/article/index.html.slim
table.table
- @article_view.header.each do |key, value|
tr
td = key
td = value
headerのハッシュ型の中には画像リンクが入っているのですが、どうしてもリンク元の画像が参照されずに、そのURLだけが文字列で記載されてしまいます。
どうすればいいのでしょうか?