Вы можете сделать это, чтобы создать локальную копию файла.Если он находится на S3, он будет загружен.
tmp_file = @model.attached_file.to_file => TempFile<...>
Затем вы можете выполнять свои операции с этим TempFile.Когда вы не в курсе:
@model.attached_file = tmp_file
@model.save
Редактировать: неверно истолковать ваш вопрос.Вы можете использовать хуки before_post_process
и after_post_process
для выполнения задач до или после обработки файла.
class Model < AR::Base
has_attached_file :avatar
after_post_process :ping_webservice
private
def ping_webservice
# Do your magic here.
end
end