Не может уничтожить рельсы BLOB-объектов - PullRequest
0 голосов
/ 06 марта 2019

Я не могу уничтожить прикрепленное изображение с помощью следующего кода:

@image = ActiveStorage::Blob.find(params[:id])
@image.purge

Однако я могу удалить прикрепленное изображение, если я сделаю это:

@image = ActiveStorage::Attachment.find(params[:id])
@image.purge

Моя модель выглядитнапример:

class Device < ApplicationRecord
    has_many_attached :images
end

Когда я пытаюсь удалить изображение с помощью экземпляра Blob, я вижу следующий откат при очистке, но при печати @image.errors.to_json просто отображается пустой хэш.Однако я могу напечатать id и другие атрибуты изображения, поэтому я уверен, что нахожу и пытаюсь удалить правильное изображение.

Вот мой консольный вывод для удаления Blob:

ActiveStorage::Blob Load (0.2ms)  SELECT  "active_storage_blobs".* FROM "active_storage_blobs" WHERE "active_storage_blobs"."id" = ? LIMIT ?  [["id", 23], ["LIMIT", 1]]
↳ app/controllers/rooms_controller.rb:68
(0.1ms)  begin transaction
↳ app/controllers/rooms_controller.rb:69
ActiveStorage::Attachment Exists (0.3ms)  SELECT  1 AS one FROM "active_storage_attachments" WHERE "active_storage_attachments"."blob_id" = ? LIMIT ?  [["blob_id", 23], ["LIMIT", 1]]
↳ app/controllers/rooms_controller.rb:69
(0.1ms)  rollback transaction
↳ app/controllers/rooms_controller.rb:69 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...