instance method
attach
Ruby on Rails 6.0.6
Since v5.2.8.1Signature
attach(attachable)
Attaches an attachable to the record.
If the record is persisted and unchanged, the attachment is saved to the database immediately. Otherwise, it’ll be saved to the DB when the record is next saved.
person.avatar.attach(params[:avatar]) # ActionDispatch::Http::UploadedFile object person.avatar.attach(params[:signed_blob_id]) # Signed reference to blob from direct upload person.avatar.attach(io: File.open("/path/to/face.jpg"), filename: "face.jpg", content_type: "image/jpg") person.avatar.attach(avatar_blob) # ActiveStorage::Blob object
Parameters
-
attachablereq
Source
# File activestorage/lib/active_storage/attached/one.rb, line 30
def attach(attachable)
if record.persisted? && !record.changed?
record.update(name => attachable)
else
record.public_send("#{name}=", attachable)
end
end
Defined in activestorage/lib/active_storage/attached/one.rb line 30
· View on GitHub
· Improve this page
· Find usages on GitHub
Defined in ActiveStorage::Attached::One