Gem carrierwave-upyun 关于刷新和默认存储路径的问题

leiz_me · 2017年04月19日 · 最后由 hrz3424 回复于 2017年04月26日 · 1404 次阅读

场景是上传用户头像

对 user.avatar 进行限制,不能超过 5MB

问题 1,如何立刻刷新?

在 upyun 上设置了几个剪裁规则,一张图上传上去后要在几个不同的地方使用。但是没办法达到马上刷新的效果,一定要手动访问过一次才可以刷新。

例如,有 ui/uc 两个剪裁规则命名,上传了一张图 pic_old.jpg,然后再上传一次 pic_new.jpg

这个时候我刷新页面看到的还是原来的头像 pic_old.jpg,要在浏览器上手动访问 pic.jpg!ui 才能刷新

问题 2,因为对 avatar 进行了大小的限制,在测试的时候如果上传超过 5MB 的图,会自动在 public/uploads 文件夹下存储新图,请问这个情况能不能通过配置关闭?

huacnlee 回复

刷新的问题解决了。谢谢。

请问对第二个问题有没有头绪?

因为设置了 avatar_size_validation, 如果校验失败,不会上传,但是 carrierwave 自动存在本地 public/uploads/tmp 里面了,这个行为有没办法关闭?

第二个问题在 uploaders 里面实现 size_range 方法即可,超出限制的文件不会进行缓存也不会进行上传。

不错啊,这个 gem 造的相当不错啊

leiz_me 关闭了讨论。 11月15日 09:33
需要 登录 后方可回复, 如果你还没有账号请 注册新账号