我目前正在使用回形针上传单张照片。当用户进入显示视图时,它会显示照片和与之相关的信息。现在我想更新它以接受多张照片,以便所有照片都显示在显示视图上。我需要使用什么?(JavaScript 和更新回形针以进行多次上传?)或者还有别的吗?
我已阅读http://sleekd.com/general/adding-multiple-images-to-a-rails-model-with-paperclip/
我目前正在使用回形针上传单张照片。当用户进入显示视图时,它会显示照片和与之相关的信息。现在我想更新它以接受多张照片,以便所有照片都显示在显示视图上。我需要使用什么?(JavaScript 和更新回形针以进行多次上传?)或者还有别的吗?
我已阅读http://sleekd.com/general/adding-multiple-images-to-a-rails-model-with-paperclip/
如果你想处理多文件上传,我建议你使用这个 jquery 库
https://github.com/blueimp/jQuery-File-Upload
它非常深入,非常适合多文件上传。
另外,这个很好的例子是关于如何用回形针实现的。
创建一个将保存照片的 Photo 类。像这样
class Photo < ActiveRecord::Base
belongs_to :your_class_having_photos
#paperclip methods and validations ....
end
在您的上传视图中:
<%=file_field "'photos'[]"%>
<%=file_field "'photos'[]"%>
<%=file_field "'photos'[]"%>
...
通过 JS 或硬编码随心所欲地完成它。然后在提交后,会有一个名为 params[:photos] 的参数,其中包含多张照片的数组。然后你可以做
params[:photos].each do |p|
photo = @your_class_object.photos.build(p)
photo.save
end
在您的控制器中,或者在您想要的更好的代码中。