class method
self.compose
Ruby on Rails 8.1.2
Since v7.0.10Signature
self.compose(blobs, key: nil, filename:, content_type: nil, metadata: nil)
Concatenate multiple blobs into a single “composed” blob.
Parameters
-
blobsreq -
keykey = nil -
filenamekeyreq -
content_typekey = nil -
metadatakey = nil
Source
# File activestorage/app/models/active_storage/blob.rb, line 144
def compose(blobs, key: nil, filename:, content_type: nil, metadata: nil)
raise ActiveRecord::RecordNotSaved, "All blobs must be persisted." if blobs.any?(&:new_record?)
content_type ||= blobs.pluck(:content_type).compact.first
new(key: key, filename: filename, content_type: content_type, metadata: metadata, byte_size: blobs.sum(&:byte_size)).tap do |combined_blob|
combined_blob.compose(blobs.pluck(:key))
combined_blob.save!
end
end
Defined in activestorage/app/models/active_storage/blob.rb line 144
· View on GitHub
· Improve this page
· Find usages on GitHub
Defined in ActiveStorage::Blob