我是ActiveStorage的新手。
我有一个名为Landing的模型,带有一个附件:image
。(我使用的是ActiveStorage)。
当创建一个新的记录一切顺利,但当你更新任何属性,图像被删除,除非你再次上传附件。这是为什么呢?如果没有新的附件上传,我是否需要显式地告诉我的控制器处理附件逻辑?没有内置的助手吗?**
在我的表单中,我有以下输入:
<%= f.file_field :image, class: "rounded input w-full my-2" %>
在我的控制器
def update
if @landing.update(landing_params)
redirect_to admin_landings_path, notice: "Actualizado con éxito :)"
else
render :edit, status: :unprocessable_entity
end
end
我的模特
has_one_attached :image do |attachable|
attachable.variant(:thumb, resize_to_fill: [500, 500])
attachable.variant(:big, resize_to_fill: [1200, 1200])
end
1条答案
按热度按时间23c0lvtd1#
通过ActiveStorage和
has_many_attached
关系,我们需要将其添加到生产和开发环境中:这种方法对我很有效。