首页 > 解决方案 > 在 erb 标签中允许 nil 值

问题描述

如果它是空的,我试图让这个标签被忽略。它旨在使用活动存储显示图像,但是,如果该图像尚未添加到记录中,则会引发错误。

<%= image_tag url_for(a.object.image), size: "400x400" %>

有什么办法可以调整语法以适应这种情况吗?

试过这个:

<%= image_tag url_for(a.object.image).nil?, size: "400x400" %>

和这个:

<%= if image_tag url_for(a.object.image).nil?, size: "400x400" %>

  <h1>Add images here</h1>

<% else %>

  <% image_tag url_for(a.object.image), size: "400x400" %>

<% end %>

标签: ruby-on-railsactiverecordrails-activestorage

解决方案


你可以做这样的事情

if a.object.image.present?
  <% image_tag url_for(a.object.image), size: "400x400" %>
end

意思是如果 a.object 有图像则显示它,如果没有则忽略它


推荐阅读