У меня ошибка с MiniMagick во время моей "after_upload" в моем image_concern.rb
Мой код делает изображение постера преобразованным в jpg. Затем он возьмет файл, который находится в / tmp, и изменит этот файл, чтобы он также был меньше, чтобы отобразить его на потом. Но у меня есть ошибка на этом шаге:
`mogrify -resize 360x200^ -gravity Center -crop 360x200+0+0 /tmp/RackMultipart20200211-5215-1lxtqf1.png` failed with error: mogrify: unable to open image '/tmp/RackMultipart20200211-5215-1lxtqf1.png':
Он пытается открыть этот файл в .png, но он находится в jpg в моем tmp /. Как сказать, что он открывает этот файл, но не в png, а в jpg. Спасибо Это мой код after_upload:
def #{field}_after_upload
path = #{field}_path
options = #{options}
if #{field}_file.respond_to? :path
dir = File.dirname(path)
FileUtils.mkdir_p(dir) unless Dir.exist?(dir)
image = MiniMagick::Image.new(#{field}_file.path) do |b|
if options[:resize].ends_with?('!')
b.resize '#{options[:resize].delete('!')}^'
b.gravity 'Center'
b.crop '#{options[:resize].delete('!')}+0+0'
else
b.resize '#{options[:resize].delete('!')}\>'
end
end
image.format 'jpg'
image.write path
if options[:formats]
options[:formats].each do |k, v|
image = MiniMagick::Image.new(#{field}_file.path) do |b|
b.resize "\#{v}^"
b.gravity 'Center'
b.crop "\#{v}+0+0"
end
image.format 'jpg'
image.write path.gsub('.jpg', "_\#{k}.jpg")
end
end
end
end
Ошибка начинается с "если параметры [: форматы]"
Спасибо!