下記コードでimageがnullの場合にimageに画像のパスを設定したいのですが、
上手く反映されません。
<% image = "/assets/book.jpg" %>
を反映するためにはどうすれば良いか困っています。
<%= render 'users/navtab' %>
<% @books.each do |book| %> <% image = book.image %> <% if image == nil %> <% image = "/assets/book.jpg" %> <% end %> <img src=<%=image%> align="left"> タイトル:<%= book.name %> <br> 著者:<%= book.author %> <br> 感想<%= book.content %> <br> <% end %>
試したこと
<% if image == "" %>
<% image = "/assets/book.jpg" %>
<% end %>
としても駄目でした。
http://localhost:3000/assets/book.jpg
は存在しますか?
存在します。
上手く反映されないというのは画像が表示されないということですか?
ソースを表示すると、表示されない画像の部分はどうなっていますか?
chrome をご利用の場合は右クリックに「ページのソースを表示」というのがあるはずです。
<img src= align="left">
chromeでソースを表示すると上記が表示されます。
<% if image == nil %> を
<% if image.blank? %> に変更するとどうなりますか?
<% if image.blank? %>にすると解決できました。
ありがとうございました。
photo.image の中身が carrierwave とかだったんでしょうか。
carrierwave は blank? に反応するようなので上手くいったんだと思います。
はい、carrierwaveでした。
困っていたので、助かりました。
ありがとうございます。
質問が「受付中」のままになっています。
https://teratail.com/help#resolve-myself
回答1件
あなたの回答
tips
プレビュー