我正在尝试在我的carrierwave上传器上创建一个版本,以检查它的父模型是否有一些关于如何调整图像大小和裁剪图像的数据,如果没有,则执行默认调整大小来填充。我一直在尝试引用此处演示的模型:https ://github.com/carrierwaveuploader/carrierwave
如果我像这样运行版本代码:
version :title do
if model.dimensions_hash["title"]
process :image_crop => [model.dimensions_hash["title"], 960, 384]
else
process :resize_to_fill => [960, 384]
end
end
我收到此错误:
NameError: undefined local variable or method `model' for #<Class:0x007f9eae7cfed0>
from /Users/RyanKing/Sites/test/app/uploaders/page_image_uploader.rb:45:in `block in <class:PageImageUploader>'
第 45 行是process :image_crop => [model.dimensions_hash["title"], 960, 384
如果 if 语句返回 true,为什么第 45 行返回错误?我是否错误地引用了模型?
我在这里发现了一个类似的问题,但无法适应我的情况。将参数传递给上传者/从上传者中访问模型的属性/让用户选择缩略图大小