我将strip方法放在CarrierWave初始化器中:
def strip
manipulate! do |img|
img.strip!
img = yield(img) if block_given?
img
end
end
并致电上传者:
version :thumb do
process :resize_to_fit => [180, nil]
process :quality => 70
process :strip
end
现在Rails吐出这个错误:
未定义的方法`strip!'对于#
答案 0 :(得分:2)
您可以像这样定义方法:
def strip
manipulate! do |img|
img.strip!
img = yield(img) if block_given?
img
end
end
但是从代码示例中不清楚 img 是否实际上有#strip或#strip!方法。错误是抱怨未定义的爆炸方法,所以请尝试img.strip
。
如果这不起作用,您可能希望在方法中插入一些调试代码,以便您可以看到 img 到底是什么,以及它实际支持哪些方法。例如:
manipulate! do |img|
puts img.class
puts img.methods.sort
img.strip
img = yield(img) if block_given?
img
end
希望有所帮助。
答案 1 :(得分:0)
只需删除
即可来自地带。