Проверка размеров изображения во вложении фу - PullRequest
1 голос
/ 27 октября 2010

Когда изображение сохраняется, высота и ширина изображения сохраняются в модели правильно.У меня есть требование, где мне нужно проверить размеры изображения перед сохранением.Он должен быть точно такого же размера.Но когда я пытаюсь получить доступ к высоте или ширине перед сохранением, это дает мне ноль.

Есть ли способ, которым я могу достичь этого?

А пока я сохраняю предупреждение, что изображение не того размера.Но это не достаточно аккуратно.

Ответы [ 2 ]

0 голосов
/ 18 ноября 2010

Я использовал after_validation. before_validation не работает для меня. По сути, я проверил размеры в хуке after_validation и выдал ошибку, используя @image.errors.add_to_base("The image needs to be of precisely 137x52 pixels."). И я сохранил изображение следующим образом.

@image.valid? # Run the validations, which calls my hook method after_validation
@image.save if @image.errors.empty?
0 голосов
/ 27 октября 2010

Я не уверен насчет attachment_fu, но реальное изображение, вероятно, сохраняется в before_save или after_save. Ваша проверка запускается до сохранения изображений.

Используйте обратный вызов before_validation для принудительной обработки изображения.

...