Ruby on rails main:Object carrierwave的未定义方法“version”
我让carrierwave的上传程序在没有对上传的图像进行任何更改的情况下工作。虽然当我注释掉生成的上传程序文件中的版本块时,我得到了main:Object消息的一个未定义的方法'version' 版本是一个内置的方法,基于谷歌搜索的内容,甚至是railscast视频,我应该能够取消注释并滚动Ruby on rails main:Object carrierwave的未定义方法“version”,ruby-on-rails,image-processing,carrierwave,Ruby On Rails,Image Processing,Carrierwave,我让carrierwave的上传程序在没有对上传的图像进行任何更改的情况下工作。虽然当我注释掉生成的上传程序文件中的版本块时,我得到了main:Object消息的一个未定义的方法'version' 版本是一个内置的方法,基于谷歌搜索的内容,甚至是railscast视频,我应该能够取消注释并滚动 # Create different versions of your uploaded files: version :thumb do process :resize_to_limit =
# Create different versions of your uploaded files:
version :thumb do
process :resize_to_limit => [313, 344]
end
我的代码库中发生了什么会导致carrierwave的版本方法出现问题?错误隐含地表示您的版本方法不在carrierwave uploader的范围内 你的上传器应该是这样的
class Uploader < CarrierWave::Uploader::Base
version 'anything' do
....
end
end
但根据错误,您的上传程序代码如下:
class Uploader < CarrierWave::Uploader::Base
...
end
version 'anything' do
....
end
因为您的版本方法在上传程序中不存在。Ruby在尝试执行时考虑将其作为主对象
您还需要确保代码中存在其他一些东西。您的gem文件中必须有rmagick gem。您的开发计算机上安装了imagemagick
在上传程序中包含未注释的CarrierWave::RMagick