【问题标题】:Validating image dimensions in attachment fu验证附件 fu 中的图像尺寸
【发布时间】:2010-10-27 08:14:51
【问题描述】:

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

有什么方法可以实现吗?

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

【问题讨论】:

    标签: ruby-on-rails attachment-fu


    【解决方案1】:

    我不确定attachment_fu,但真实图像可能保存在before_saveafter_save 中。在保存图像之前运行您的验证。

    使用before_validation 回调来强制处理图像。

    【讨论】:

      【解决方案2】:

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

      【讨论】:

        猜你喜欢
        • 2018-09-22
        • 1970-01-01
        • 1970-01-01
        • 2021-07-03
        • 1970-01-01
        • 2021-06-09
        • 2016-08-28
        • 2015-09-20
        相关资源
        最近更新 更多