如何同时上传多张照片? Ruby on Rails

时间:2013-06-15 19:49:40

标签: ruby-on-rails ruby ruby-on-rails-3

我上传照片时遇到问题。

在muy视图中,我拍了一些照片如下:

<%= f.label :images_urls, 'image' %> <br>
    <%= f.file_field :images_urls, {:multiple => true} %> <br>

但我不知道如何将它们保存在我的模型“家具”中。 这是我的家具,但我不工作:

 def create
    image_io = params[:furniture][:images_urls]
    File.open(Rails.root.join('public','furnitures', image_io.original_filename), 'wb') do |file|
      file.write(image_io.read)
    end

    @furniture = Furniture.create(params[:furniture])

    redirect_to admins_path
  end

你有什么建议吗?

非常感谢

1 个答案:

答案 0 :(得分:0)

我建议使用CarrierwavePaperclip等宝石。在您的视图中,要允许多个文件上载,您可能需要实现异步文件上载。使用jQuery的一个非常方便的方法是使用一个名为jQuery-file-upload的插件(可以处理多个文件)。

Ryan Bates在Railscasts jQuery File Upload上有关于如何做到这一点的精彩视频。还有一个gem为你预装了这个jQuery插件,名为jquery-fileupload-rails