将信息从图像上传器发送到模型载波

时间:2018-02-21 09:38:12

标签: ruby-on-rails ruby ruby-on-rails-4 carrierwave

所以目前我的桌子有一个宽度列和一个高度列,

def store_dimensions
if file && model
  model.width, model.height = ::MiniMagick::Image.open(file.file[:dimensions])
 end
end

我使用此方法设置高度和宽度,因此在模型中的验证方法中,我可以验证尺寸是否有效。

我想知道是否有更好的方法将params发送到模型而不是将它们持久化到数据库,因为在验证之后它们不会被再次使用。

我试图添加

attr_accessor :height, width

上传者和模型然后在商店维度方法中设置变量,但无法在模型末端检索它们。

如果有人有任何经验这样做,你可以轻松谢谢

1 个答案:

答案 0 :(得分:1)

要仅将某些字段用于验证,可以在模型上定义attr_accessor,但需要记住,这些属性仅在显式分配时才可用(因为没有DB列支持)。

对于当前情况,您可以保留当前代码并在模型上定义attr_accessor :height, :width并在验证中使用它们。