Gem 使用 carrierwave 如何做多文件上传,表单处应该如何填写

nicetyler · 发布于 2017年09月05日 · 最后由 xofred2 回复于 2017年09月13日 · 201 次阅读
A44eb4

我用carrierwave做多文件上传,不知道前端视图页面应该如何编写,代码如下: 首先是创建了一个photo_uploader模型 接着我在product模型里面添加如下代码

# 文件上传
mount_uploaders :photos,PhotoUploader
serialize :photos,JSON

在products控制器中添加如下代码

def product_params
  params.require(:product).permit(:code,:type_id,:name,:description,:status_id,
                                  :feature,:create_user_id,:update_user_id,:version,{photos:[]})
end

form表单我是这样写的

<div class="form-group">
  <%= f.label :photos, "图片上传" %>
    <%= f.file_field :photos[0], multiple: true %>
  <%= f.hidden_field :photos_cache %>
</div>

这个表单应该怎么写

共收到 1 条回复
5774

之前项目的做法是,分多次上传,同一个action处理

params.require(:product).permit(:photo)

form类似

<%= form_for :product, { class: "form-group", multiple: true } do |f| %>
  <%= f.file_field :photo %>
<% end %>

这样的

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册