おそらくそうはならないでしょう。元の画像はまだ使用されており、これらは最適化されたバージョンだからです。ストレージを多少消費する以外の大きな害はありません。
Rails コンソールからそれらをクリーンアップすることができます。この処理は設定にデフォルトで含まれていたサイズを対象とし、他の場所で生成された修飾子からの画像は削除しません。
# 1. 実際に存在するもの vs 依然として正当に登録されているものを確認
still_needed = Topic.thumbnail_sizes +
ThemeModifierHelper.new(theme_ids: Theme.pluck(:id)).topic_thumbnail_sizes
TopicThumbnail.group(:max_width, :max_height).count
# 2. 不要なサイズ(ファイルとレコード)を削除
[[300, 300], [600, 600], [900, 900]].each do |w, h|
next if still_needed.include?([w, h]) # 他の場所でまだ使用されているサイズは触らない
TopicThumbnail
.where(max_width: w, max_height: h)
.find_each { |tt| tt.optimized_image&.destroy! }
# 最適化された画像がない試行レコードはカスケード削除されないため
TopicThumbnail.where(max_width: w, max_height: h).delete_all
end
ああ、いいアイデアですね。すでに存在するサムネイルを確認し、もしあれば最適なサイズを使用するようにします。オリジナルのみが利用可能な場合は、それが常にフォールバックとして機能します。
こちらで対応します: