【发布时间】:2018-06-25 22:58:10
【问题描述】:
我已将我的 Rails 应用程序迁移到 5.2.0。在我使用回形针之前。上传图像时,回形针会生成不同的变体,例如缩略图和头像。如何使用 ActiveStorage 实现这一目标?我知道我们可以做到这一点user.avatar.variant(resize_to_fit: [100, 100]) 但对我来说就像一遍又一遍地这样做。我的目标是在这些变体上传后对其进行预处理。
如果你的经验不好,你们也可以提出更好的技术。
【问题讨论】:
-
你的方法是对的,但是你需要在你的代码中包含一个方法
.processed所以它应该如下所示:user.avatar.variant(resize_to_fit: [100, 100]).processed -
这是否意味着在我调用 user.avatar.variant(resize_to_fit: [100, 100]).processed 之后,它将被保存到磁盘中,下次它只会返回变体而不返工。下次如何使用该变体?是 user.avatar.variant(resize_to_fit: [100, 100]) 还是 user.avatar.variant(resize_to_fit: [100, 100]).processed?
-
你是对的,它会保存变体并一直使用它,你总是应该包含
.processed来使用保存的变体。如果要刷新/重新生成变体,则可以使用不带.processed的代码 -
@TrongBang 如果下面推荐的答案解决了您的问题或帮助了您,您可以将其标记为解决方案吗?谢谢!
标签: ruby-on-rails rails-activestorage