加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – Refile gem:多个文件上传

发布时间:2020-12-16 20:04:22 所属栏目:百科 来源:网络整理
导读:我正在使用Refile with Rails 4.我正在跟着他们的教程为 multiple image upload.每个帖子可以有多个图像.我的模型看起来像这样: Post.rb: has_many :images,dependent: :destroyaccepts_attachments_for :images,attachment: :file Image.rb: belongs_to
我正在使用Refile with Rails 4.我正在跟着他们的教程为 multiple image upload.每个帖子可以有多个图像.我的模型看起来像这样:

Post.rb:

has_many :images,dependent: :destroy
accepts_attachments_for :images,attachment: :file

Image.rb:

belongs_to :post
attachment :file

我可以上传文件,罚款通过使用:

<%= f.attachment_field :images_files,multiple: true,direct: true,presigned: true %>

但是当我尝试检索一个像:

<%= attachment_image_tag(@post.images,:file,:small) %>

我得到错误:

undefined method file for #<Image::ActiveRecord_Associations_CollectionProxy:0x007fbaf51e8ea0>

如何使用多张图像上传检索图像?

解决方法

为了检索属于帖子的图像,您需要遍历图像数组.
<% @post.images.each do |image| %>
  <%= attachment_image_tag(image,:fill,300,300) %>
<% end %>

助手attachment_image_tag采取:

> [Refile :: Attachment] object:具有附件文件的类的实例.
> [Symbol] name:附件列的名称

所以这里,@ posts.images拥有一个图像对象的数组.那个对象有一个附加的文件.

class Image < ActiveRecord::Base
  belongs_to :post
  attachment :file
end

然后,当您迭代图像时,您将给图像对象的帮助者以及附件列的名称,如下所示:file.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读