Rails: Cloudinary gem - 默认图像未加载
Rails: Cloudinary gem - default image not loading
我正在开发一个类似 pinterest 的应用程序,使用 Cloudinary gem 和 Attachinary。我在我的 index.html.erb 文件中添加了一行,如果创建的 Pin 图没有或图像未正确加载,该文件应该显示默认图像。
<% if pin.image.present? %>
<%= link_to pin do %>
<%= cl_image_tag(pin.image.path) %>
<% end %>
<% if pin.image.present? == false %>
<%= cl_image_tag('no-image-found_jqqruy') %>
<% end %>
不幸的是,它不起作用 - 图钉的图像可以正确显示,但对于那些不能正确显示的图钉,只能看到一条粗线(jQuery 砌体网格)。我想知道使用 cloudinary 设置默认图像的正确方法是什么。我哪里做错了?这是我的完整索引文件:
<div id="pins" class="transitions-enabled">
<% @pins.each do |pin| %>
<div class="container">
<div class="box panel panel-default">
<% if pin.image.present? %>
<%= link_to pin do %>
<%= cl_image_tag(pin.image.path) %>
<% end %>
<% if pin.image.present? == false %>
<%= cl_image_tag('no-image-found_jqqruy') %>
<% end %>
<div class="panel-body">
<%= pin.description %> <br>
<strong><%= pin.user.email if pin.user %></strong>
<% if pin.user == current_user && user_signed_in? %>
<div class="actions">
<%= link_to edit_pin_path(pin) do %>
<span class="glyphicon glyphicon-edit black"></span>
Edit
<% end %>
<%= link_to pin, method: :delete, data: { confirm: 'Are you sure?' } do %>
<span class="glyphicon glyphicon-trash black"></span>
Delete
</div>
<% end %>
<% end %>
</div>
<% end %>
</div>
<% end %>
</div>
我只会补充一点,在我引入字形之前一切正常。
非常感谢您的帮助!
如果没有复制和粘贴错误,则缺少额外的 end
来终止 link_to pin do
语句。所以第一个if
语句仍然有效,然后查询相反的if
语句,这当然永远不会是真的。
我建议使用 if-else-end。
<% if pin.image.present? %>
<%= link_to pin do %>
<%= cl_image_tag(pin.image.path) %>
<% end %>
<% else %>
<%= cl_image_tag('no-image-found_jqqruy') %>
<% end %>
我正在开发一个类似 pinterest 的应用程序,使用 Cloudinary gem 和 Attachinary。我在我的 index.html.erb 文件中添加了一行,如果创建的 Pin 图没有或图像未正确加载,该文件应该显示默认图像。
<% if pin.image.present? %>
<%= link_to pin do %>
<%= cl_image_tag(pin.image.path) %>
<% end %>
<% if pin.image.present? == false %>
<%= cl_image_tag('no-image-found_jqqruy') %>
<% end %>
不幸的是,它不起作用 - 图钉的图像可以正确显示,但对于那些不能正确显示的图钉,只能看到一条粗线(jQuery 砌体网格)。我想知道使用 cloudinary 设置默认图像的正确方法是什么。我哪里做错了?这是我的完整索引文件:
<div id="pins" class="transitions-enabled">
<% @pins.each do |pin| %>
<div class="container">
<div class="box panel panel-default">
<% if pin.image.present? %>
<%= link_to pin do %>
<%= cl_image_tag(pin.image.path) %>
<% end %>
<% if pin.image.present? == false %>
<%= cl_image_tag('no-image-found_jqqruy') %>
<% end %>
<div class="panel-body">
<%= pin.description %> <br>
<strong><%= pin.user.email if pin.user %></strong>
<% if pin.user == current_user && user_signed_in? %>
<div class="actions">
<%= link_to edit_pin_path(pin) do %>
<span class="glyphicon glyphicon-edit black"></span>
Edit
<% end %>
<%= link_to pin, method: :delete, data: { confirm: 'Are you sure?' } do %>
<span class="glyphicon glyphicon-trash black"></span>
Delete
</div>
<% end %>
<% end %>
</div>
<% end %>
</div>
<% end %>
</div>
我只会补充一点,在我引入字形之前一切正常。
非常感谢您的帮助!
如果没有复制和粘贴错误,则缺少额外的 end
来终止 link_to pin do
语句。所以第一个if
语句仍然有效,然后查询相反的if
语句,这当然永远不会是真的。
我建议使用 if-else-end。
<% if pin.image.present? %>
<%= link_to pin do %>
<%= cl_image_tag(pin.image.path) %>
<% end %>
<% else %>
<%= cl_image_tag('no-image-found_jqqruy') %>
<% end %>