#<ImagesUploader :: UploadedFile:0x00007f8a0f0c0760>的未定义方法'each'

在我看来,我有这个:

<% @item.images.each do |image| %>
 <%= image_tag image.images_url(:large) %>
<% end %>

如果我上传了一个图片,它将返回错误undefined method 'each' for #<ImagesUploader::UploadedFile:0x00007f8a0f0c0760>,但是如果我上传了多个图片,则该视图可以正常工作。另外,<%= image_tag @item.images_url(:large) %>也可以不带封闭块。

activeStorage切换到Shrine之前,我没有这个问题。

如何编写视图以显示所有上传的图像,无论是一个还是多个?

iCMS 回答:#<ImagesUploader :: UploadedFile:0x00007f8a0f0c0760>的未定义方法'each'

您可以执行以下操作

<% (Array @item.images).each do |image| %>

这将始终返回数组,请检查以下示例。

2.5.1 :001 > Array 5
 => [5]
2.5.1 :002 > Array [5]
 => [5]
2.5.1 :003 > Array []
 => []
本文链接:https://www.f2er.com/1574841.html

大家都在问