Ruby on rails 如何使用carrierwave列出对象的每个图像

Ruby on rails 如何使用carrierwave列出对象的每个图像,ruby-on-rails,carrierwave,Ruby On Rails,Carrierwave,我想在显示页面上显示用户上传的每个图像。通过阅读文档和观看一些视频,我能够创建上传程序并使其正常工作。也许这是显而易见的,但对我来说是非常重要的。我查阅了Gem文档,但没有发现这一点。我试着对每一个物体都做了一些,但没有成功。 这是我的模型 class Imovel < ApplicationRecord belongs_to :bairro belongs_to :tipoimovel has_many :caracteristica_imovels, inverse_of:

我想在显示页面上显示用户上传的每个图像。通过阅读文档和观看一些视频,我能够创建上传程序并使其正常工作。也许这是显而易见的,但对我来说是非常重要的。我查阅了Gem文档,但没有发现这一点。我试着对每一个物体都做了一些,但没有成功。 这是我的模型

class Imovel < ApplicationRecord
  belongs_to :bairro
  belongs_to :tipoimovel
  has_many :caracteristica_imovels, inverse_of: :imovel
    has_many :caracteristicas, through: :caracteristica_imovels, dependent: :destroy
    accepts_nested_attributes_for :caracteristica_imovels, reject_if: :all_blank, allow_destroy: true
  mount_uploaders :imagens, ImagemUploader
end
这是上传程序代码:

class ImagemUploader < CarrierWave::Uploader::Base
  storage :file

  def store_dir
    "uploads/#{model.class.to_s.underscore}/#{mounted_as}/#{model.id}"
  end
这是我的表格,它是如何上传的

<%= f.file_field :imagens, multiple: true, class: "float-left" %>
我通过以下方式显示我正在显示的显示页面:

 <%= image_tag(@imovel.imagens[1].url) if @imovel.imagens? %>
问题是,我有数组索引,我不知道如何使它动态工作。
我怎样才能做到这一点呢?

在@max的帮助下,正确的方法是每种方法都正确地执行。代码如下:

<% @imovel.imagens.each do |imagem| %> 
     <%= image_tag(imagem.url) %>
<% end %>

只需使用@imovel.imagens.each do循环浏览一下……同时将自己限制在一个问题上。不是两个无关的问题。已经尝试这样做了,但是抛出了一个错误:nil:NilClass的未定义方法'url'。试着这样做:我错过了什么?对不起,这两个问题已经解决了,谢谢你的提醒。非常感谢,我再试了一次,你是对的。它的工作原理是:您可以删除'if@imovel.imagens?',因为如果集合为空,则不会调用该块。