如何用Phoenix和Arc替换上传的图像?

时间:2017-01-30 14:25:35

标签: elixir phoenix-framework

我使用Arc上传图片 - 它是上传者的基本结构 - 我不做任何自定义或奇特的操作 - 验证,转换或文件名都与{{3}中的类似}。

我想替换我上传的图片,正如我在uploads文件夹中看到的那样,我存储它们 - 一切都很好,但在我的应用中,因为我检查想要像这样使用url/2:< / p>

Avatar.url({file, scope}, :thumb)

它将url返回到旧文件,有时这个旧文件被破坏 - 仅部分呈现。使用mix phoenix.server并不会改变这种情况。有没有奇怪的缓存?我可以使用讨厌的解决方法来确保文件thumb.png被删除,只要它存在,但是有什么不同的方式吗?

TL; DR :如何使用相同的名称替换上传的图片,以确保url的新用法(由Arc.Storage.Local或Arc.Storage.S3提供) )会正常工作吗?

1 个答案:

答案 0 :(得分:0)

在这种情况下,对我来说最简单的解决方法是为每个新上传的图像命名。为此,我在架构中使用了另外的字段,其中包含logo_number(我并不想将其命名为id)并确保通过简单使用File模块函数删除所有旧文件 - 即lsrm!