Ruby on rails Carrierwave质量不适用于任何版本

Ruby on rails Carrierwave质量不适用于任何版本,ruby-on-rails,ruby,image,carrierwave,minimagick,Ruby On Rails,Ruby,Image,Carrierwave,Minimagick,我遇到了有关carrierwave质量设置的问题 首先,让我介绍一些代码(uploaders/second_image_uploader): 因此,问题是: 当我在model create上上传文件时,一切都很好-carrierwave创建“完整”版本,根据我的参数进行压缩,创建大约50kb的图像-太棒了 不管怎样,一旦我运行了>一些_model.second _image.rebuild _版本,它会重新创建它们,但没有应用质量参数,将大小增加到500kb左右,这是不可接受的 如果有人能帮我找

我遇到了有关carrierwave质量设置的问题

首先,让我介绍一些代码(uploaders/second_image_uploader):

因此,问题是:

当我在model create上上传文件时,一切都很好-carrierwave创建“完整”版本,根据我的参数进行压缩,创建大约50kb的图像-太棒了

不管怎样,一旦我运行了
>一些_model.second _image.rebuild _版本,它会重新创建它们,但没有应用质量参数,将大小增加到500kb左右,这是不可接受的

如果有人能帮我找出问题所在,我将不胜感激

class SecondImageUploader < CarrierWave::Uploader::Base
  include CarrierWave::RMagick

  def filename
    super.chomp(File.extname(super)) + '.png' unless super.nil?
  end

  version :full do
    process :quality => 85
  end

  # ...
end    
module CarrierWave
  module RMagick

    def quality(percentage)
      manipulate! do |img|
        img.write(current_path){ self.quality = percentage } unless img.quality == percentage
        img = yield(img) if block_given?
        img
      end
    end

  end
end