ホームページ機能

おそらくそうはならないでしょう。元の画像はまだ使用されており、これらは最適化されたバージョンだからです。ストレージを多少消費する以外の大きな害はありません。

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

ああ、いいアイデアですね。すでに存在するサムネイルを確認し、もしあれば最適なサイズを使用するようにします。オリジナルのみが利用可能な場合は、それが常にフォールバックとして機能します。

こちらで対応します:

「いいね!」 2