保存图像时,图像的高度和宽度将正确保存在模型中。我有一个要求,在保存之前需要验证图像的尺寸。它必须具有相同的维度。但是,当我尝试在节省之前访问高度或宽度时,它会给我零。

有什么办法可以实现这一目标?

现在,我在保存后发出警告,即图像不是所需的尺寸。但这还不够整洁。

有帮助吗?

解决方案 2

我用了 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?

其他提示

我不确定actionment_fu,但是真实图像可能保存在一个 before_save 或者 after_save. 。您的验证在保存图像之前运行。

用一个 before_validation 回调以强制处理图像。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top