Шаги для воспроизведения
Создание модели с вложенным изображением Active Storage (S3) (в моем случае файл .png). Использование по умолчанию active_storage_analysis
Ожидаемое поведение
Поскольку все, что я делал, это вызывал метод analyze
(который, как я полагаю, вызывается в первый раз при создании вложения), я ожидаю, что он изначально имеет атрибуты width / height.
Фактическое поведение
В метаданных BLOB-объектов отсутствуют атрибуты ширины / высоты:
#<ActiveStorage::Blob:0x00007fb934129130
id: "d6d6922a-646f-446f-8656-b1301ca5ba59",
key: "dm46dnva9crgu9k1r9y4bwmhz3oi",
filename: "Cheddah_icon-60@3x.png",
content_type: "image/png",
metadata: {"identified"=>true, "analyzed"=>true},
byte_size: 3559,
checksum: "x+EHSQeB6l3Kvb+8SCMzxg==",
created_at: Mon, 03 Jun 2019 14:56:13 UTC +00:00>
Затем я вручную анализирую BLOB-объект, вызывая для него метод analyze
. Теперь он имеет ширину / высоту:
#<ActiveStorage::Blob:0x00007fb934129130
id: "d6d6922a-646f-446f-8656-b1301ca5ba59",
key: "dm46dnva9crgu9k1r9y4bwmhz3oi",
filename: "Cheddah_icon-60@3x.png",
content_type: "image/png",
metadata: {"identified"=>true, "analyzed"=>true, "width"=>180, "height"=>180},
byte_size: 3559,
checksum: "x+EHSQeB6l3Kvb+8SCMzxg==",
created_at: Mon, 03 Jun 2019 14:56:13 UTC +00:00>
Конфигурация системы
Версия Rails : 6.0.0.rc1
Версия Ruby : 2.6.2p47 (ревизия 2019-03-13 67232)
Дополнительная информация
- Я использую Sidekiq
v5.2.7
- (не уверен, если уместно) мой вариантный процессор VIPS:
image_processing (1.9.0)
mini_magick (>= 4.9.3, < 5)
ruby-vips (>= 2.0.13, < 3)
Я знаю, что я могу просто создавать фоновые задания, чтобы делать это каждый раз, когда модель сохраняется, но согласно всей документации, которую я смог найти, мне не нужно делать это вручную, верно?
Спасибо за помощь