class method
self.create_and_upload!
Ruby on Rails 8.1.3.1
Since v6.0.6.1Signature
self.create_and_upload!(key: nil, io:, filename:, content_type: nil, metadata: nil, service_name: nil, identify: true, record: nil)
Creates a new blob instance and then uploads the contents of the given io to the service. The blob instance is going to be saved before the upload begins to prevent the upload clobbering another due to key collisions. When providing a content type, pass identify: false to bypass automatic content type inference.
The optional key parameter is treated as trusted. Using untrusted user input as the key may result in unexpected behavior.
Parameters
-
keykey = nil -
iokeyreq -
filenamekeyreq -
content_typekey = nil -
metadatakey = nil -
service_namekey = nil -
identifykey = true -
recordkey = nil
Source
# File activestorage/app/models/active_storage/blob.rb, line 106
def create_and_upload!(key: nil, io:, filename:, content_type: nil, metadata: nil, service_name: nil, identify: true, record: nil)
create_after_unfurling!(key: key, io: io, filename: filename, content_type: content_type, metadata: metadata, service_name: service_name, identify: identify).tap do |blob|
blob.upload_without_unfurling(io)
end
end
Defined in activestorage/app/models/active_storage/blob.rb line 106
· View on GitHub
· Improve this page
· Find usages on GitHub
Defined in ActiveStorage::Blob