0

ペーパークリップを使用して画像を S3 にアップロードしましたが、

has_attached_file :attachment,
                      styles: { mini: '48x48>', small: '100x100>', product: '240x240>', large: '600x600>',larger: '860x1280>' },
                      default_style: :product
validates_attachment :attachment,
      :presence => true,
      :content_type => { :content_type => %w(image/jpeg image/jpg image/png image/gif) }

ここで、gem "paperclip-compression" を使用して、既に S3 にアップロードされている画像を圧縮したいので processors: [:thumbnail, :compression],、Ruby スクリプトを使用してすべての添付ファイルを更新するにはどうすればよいですか?? を追加しました。画像を読み取ってファイルに保存することはできますが、添付ファイルをファイルで更新することはできません。

4

1 に答える 1

1

paperclip wikiによると、次のreprocess!メソッドを使用する必要があります。

Model.each do |model|
  model.attachment.reprocess!
end

別のオプションは、rake タスクを使用することです。

# only thumbnails style
rake paperclip:refresh:thumbnails CLASS=Model

# or all styles
rake paperclip:refresh CLASS=Model

# only missing styles
rake paperclip:refresh:missing_styles
于 2015-09-15T06:17:40.797 に答える