Rails FineUploader 如何删除已上传的图片

cameo · 2013年11月13日 · 最后由 yj026 回复于 2015年12月11日 · 7388 次阅读

有一个像发微博那样的需求,要求上传并且能预览图片。找了一圈发现 ajaxUpload 控件里面 FineUploader 比较好,可是没有太多结合 Rails 的例子。我自己弄了半天,配合 carrierwave 可以上传图片了,但是不知道怎么通过删除预览图片来删除已上传的图片。比如客户端的'deleteFile'怎么填写?

deleteFile: {
                enabled: true,
                method: "DELETE",
                endpoint: "#{some_route_helper_method}"
            }

问题是这个#{some_route_helper_method}怎么写,通常都要传入被删除对象实例或者 id 呀,如何得到?有没有人用过最新的 FineUploader,请教如何处理图片删除?

只用过 jquery-file-upload,楼主说的功能都可以实现。 可以看我的博客http://loveltyoic.com/blog/2013/09/19/jquery-fileupload/ 我自己的网站http://fluidcars.com用的就是这个,可以参考下~

@loveltyoic 先谢谢了,我先研究一下

楼主说的 FineUploader 当时也想尝试一下来着,但是貌似要购买吧

@loveltyoic 他们网站上是要购买,github 上又开源,搞不懂。

#4 楼 @cameo 购买 license,估计直接用算侵犯了知识产权?感觉文档倒是比较全,毕竟是收费的嘛。有钱的话可以一试,不过 jfu 暂时够用了。等有需求再开发

#5 楼 @loveltyoic 是啊,现在是比较哪个好,真要用还是要购买 license。我发现一个不同,fineuploader setup 只需要包含一个 js 和 css 文件,jquery-file-upload setup 要包含好多文件,这点不爽啊。

#6 楼 @cameo 直接用 gem 呗 https://github.com/tors/jquery-fileupload-rails,感谢作者 js 和 css 各一句搞定

#7 楼 @loveltyoic 上传到本地没问题,但是上传到又拍云遇到 401 Unauthorized 问题怎么解决?

自己解决了这个 401 Unauthorized 问题,就是加入 csrf token 到 form data 中。搞定上传到又拍云!

$('#fileupload').fileupload({
      formData: [{authenticity_token: "#{form_authenticity_token.to_s}"}]
});

放弃了 java-file-upload 和 fineuploader,因为 UI 定制起来太麻烦不方便,还是采用 jquery ajaxForm 控件了,简单易用!

最近看到你帖子,虽然隔了这么久,我还是回复一下吧,fineuploader 里面的上传和删除在请求后台的时候都会自动带上"qquuid"参数,使用这个参数可以区分图片的唯一性,他能保证点击删除的那张图与上传时候传给后台的"qquuid"一致。

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