class ActiveStorage::Attachment

Parent:
ActiveStorage::Record

Attachments associate records with blobs. Usually that's a one record-many blobs relationship, but it is possible to associate many different records with the same blob. A foreign-key constraint on the attachments table prevents blobs from being purged if they’re still attached to any records.

Attachments also have access to all methods from ActiveStorage::Blob.

Public Instance Methods

purge() Show source
# File activestorage/app/models/active_storage/attachment.rb, line 23
def purge
  transaction do
    delete
    record&.touch
  end
  blob&.purge
end

Synchronously deletes the attachment and purges the blob.

purge_later() Show source
# File activestorage/app/models/active_storage/attachment.rb, line 32
def purge_later
  transaction do
    delete
    record&.touch
  end
  blob&.purge_later
end

Deletes the attachment and enqueues a background job to purge the blob.

© 2004–2020 David Heinemeier Hansson
Licensed under the MIT License.