module IdCard class EmployerLogo < ApplicationRecord before_validation :calculate_aspect_ratio, if: :image_data_changed? private def calculate_aspect_ratio image_io = StringIO.new(self.image_data) width, height = FastImage.size(image_io) image_ratio = width.to_f / height if image_ratio self.aspect_ratio = image_ratio.round(2) end end end end