首页 > 解决方案 > 如果条件 image.url.present,我该如何添加?

问题描述

我这里有四张图片,如果其中一张图片为空而不显示为丢失,我想要什么。这是一张图片来解释更多在此处输入图像描述

   <% [@car.image.url, @car.image2.url, @car.image3.url, @car.image4.url].each do |image| %>
              <%= link_to "javascript:void(0)", data: { image: image, zoom_image: image } do %>
                <%= image_tag image%>
              <% end %>
            <% end %>

标签: ruby-on-railsif-statement

解决方案


好吧,一个简单的 if 就可以了

<% [@car.image.url, @car.image2.url, @car.image3.url, @car.image4.url].each do |image| %>
   <%= link_to "javascript:void(0)", data: { image: image, zoom_image: image } do %>
     <%= image_tag image%>
   <% end if image.present? %>
<% end %>

或者,你可以compact数组,然后迭代。像这样:

<% [@car.image.url, @car.image2.url, @car.image3.url, @car.image4.url].select(&:present?).each do |image| %>
   <%= link_to "javascript:void(0)", data: { image: image, zoom_image: image } do %>
     <%= image_tag image%>
   <% end%>
<% end %>

推荐阅读