我正在尝试为我正在处理的Web应用程序实现手动裁剪,到目前为止我有这个:
version :croppedversion do
process :manualcrop => [model.crop_x, model.crop_y, model.crop_h, model.crop_w]
end
process :resize_to_limit => [600, 600]
def manualcrop(x,y,h,w)
manipulate! do |img|
img = img.crop(x,y,h,w)
end
end
问题在于模型正在变为零。从我读过的文档中,这将是正确的方法。
有什么建议吗?我现在已经将调用的调用转移到了模型中的回调中,但是真的希望它能够驻留在carrierwave中
答案 0 :(得分:0)
我遇到了类似的问题。我有
attr_accessor:crop_x,:crop_y,:crop_w,:crop_h
但忘了在attr_accessible中包含裁剪变量。通过做
attr_accessible:description,:image,:crop_x,:crop_y,:crop_w,:crop_h
我能够获得模型裁剪变量。我不知道这是否会解决您的问题,因为您描述的模型返回的是nil而不是裁剪方法。
答案 1 :(得分:0)
在尝试访问模型数据时,我在CarrierWave中的对象是nil非常困难。
对我来说,问题出在我的控制器上。这看起来并不像它适用于你的情况,但我正在通过执行以下操作来运行查询:model.user.foo - 如果我在创建对象后立即将此用户分配给模型,则会出现nil。 / p>