gpt4 book ai didi

ruby-on-rails - 如何在 ActiveAdmin 中使用 ActiveStorage `has_many_attached` 编辑多个附加图像

转载 作者:行者123 更新时间:2023-12-03 15:23:56 25 4
gpt4 key购买 nike

我有一个简单的模型,可以通过 ActiveStorage 附加多个图像处理文件存储。

我正在使用 ActiveAdmin编辑我的模型并上传/附加图像 - 到目前为止没有问题。

问题是,当我想编辑我的模型并添加新图像时,之前的图像会被删除,而只会添加新的图像。

我可以预览已经附加的图像,也可以单独删除它们,但是我如何实现,通过上传新图像,旧图像不会被删除?

我的型号:

class Post < ActiveRecord::Base
has_many_attached :images
end

我的 ActiveAdmin 页面:
ActiveAdmin.register AdminPost do
permit_params images:[]

form do |f|
f.input :images, as: :file, input_html: { multiple: true }

if @resource.images.exists?
@resource.images.map do |m|
para image_tag m
end
end
end
end

最佳答案

假设您使用的是 Rails 6.0+;
您可以通过在您的环境中添加以下代码来解决这个问题(即 development.rb )
https://github.com/rails/rails/issues/35817#issuecomment-628654948

config.active_storage.replace_on_assign_to_many = false

以你的形式,
form do |f|
f.input :images, as: :file, input_html: { multiple: true }
f.object.images.each do |image|
span image_tag(image)
end
end

关于ruby-on-rails - 如何在 ActiveAdmin 中使用 ActiveStorage `has_many_attached` 编辑多个附加图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61933070/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com