Я создаю и уничтожаю файл ActiveStorage за одну транзакцию. Как я могу остановить выполнение поставленного в очередь AnalyzeJob?

Я создаю, а затем уничтожаю файл activestorage за одну транзакцию.

Каждый раз, когда файл прикрепляется в Rails, задание ActiveStorage :: AnalyzeJob ставится в очередь.

Я использую систему очередей (очередь) с поддержкой базы данных, поэтому это задание выполняется только после транзакции, что здесь является проблемой, потому что объект был уничтожен при запуске задания, что вызывает эту ошибку, которая засоряет мои исключения:

ActiveJob::DeserializationError: Error while trying to deserialize arguments: Couldn't find ActiveStorage::Blob with 'id'=.....

Есть ли способ остановить постановку задания ActiveStorage :: AnalyzeJob в очередь? Я не хочу отключать AnalyzeJob глобально, только для этого конкретного случая.

Спасибо


person cmrichards    schedule 02.07.2020    source источник
comment
Отвечает ли это на ваш вопрос? Rails: как отключить анализаторы и программы предварительного просмотра ActiveStorage   -  person Fabian Winkler    schedule 02.07.2020
comment
@FabianWinkler Не совсем так, потому что я хочу отключить его только для этого конкретного случая, а не глобально. Спасибо. Я обновил свой вопрос, чтобы отразить это.   -  person cmrichards    schedule 07.07.2020