아니라고 생각합니다. 원본 이미지는 여전히 사용 중이고, 이 이미지들은 최적화된 버전이므로요. 저장 공간을 조금 차지하는 것 외에는 실질적인 해로움이 없습니다.
Rails 콘솔을 통해 정리할 수 있습니다. 이 방법은 해당 설정에 기본적으로 포함된 크기를 처리하며, 다른 곳에서 수정자(modifier)를 통해 생성된 이미지들은 삭제하지 않습니다.
# 1. 실제로 존재하는 것과 여전히 정당하게 등록되어 있는 것 확인
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! }
# 최적화된 이미지가 없는 시도(attempt) 레코드는 연쇄 삭제되지 않음
TopicThumbnail.where(max_width: w, max_height: h).delete_all
end
오, 좋은 아이디어입니다 — 이미 존재하는 섬네일이 있는지 확인하고, 있다면 가장 적절한 크기를 사용하겠습니다. 오리지널만 사용 가능한 경우, 그것은 항상 폴백으로 작동할 것입니다.
여기서 진행합니다: