我有一个使用ActiveStorage的模型:
class Package < ApplicationRecord
has_one_attached :poster_image
end
我该如何创建一个 Package 对象的副本,并包含初始 poster_image 文件的副本。大致类似于以下内容:original = Package.first
copy = original.dup
copy.poster_image.attach = original.poster_image.copy_of_file
dependent
选项设置为 false,以避免在删除原始软件包时删除 blob:has_one_attached: poster_image, dependent: false
。 - RobbanActiveStorage::PurgeJob
似乎只会执行SELECT 1 AS one FROM "active_storage_attachments" WHERE "active_storage_attachments"."blob_id" = 55 LIMIT 1
,并且如果有其他附件引用该Blob时不会删除它。所以dependent: false
应该是不必要的。 - ndnenkovraise ActiveRecord::InvalidForeignKey if attachments.exists?
- Mirko