:image_uid
은 이미지를 식별하기위한 고유 식별자이므로 번역에 적합하지 않습니다. 그러나 :image_name
속성이있는 경우 Dragonfly는이를 파일 이름으로 사용합니다.
예를 들어 텍스트를 삽입했기 때문에 모든 언어에 다른 이미지를 사용하려면 이름이나 더 정확하게는 항상 URL이 다른 것을주의해야합니다. 로케일을 URL에 추가 할 수 있습니다 (?locale=en
). 또는 파일의 이름을 translation.en.jpg
으로 지정할 수 있습니다. 이름을 할당하려면 도우미 메서드 @model.image.name
, .basename
및 .ext
을 사용할 수 있습니다.
파일 이름 만 변경하고 항상 동일한 이미지가 제공되도록하려면 URL 다시 쓰기 엔진이 필요하며 캐시 전에 파일 이름을 제거하십시오. 그렇지 않으면 동일한 이미지의 불필요한 사본이 만들어지며 디스크 공간과 처리 능력이 낭비됩니다.
require 'dragonfly/rails/images'
Rails.application.middleware.insert_before(Rack::Cache, Rack::Rewrite) do
rewrite %r{/media/([^/]+)/[^?]*(.*)}, '/media/$1$2'
end
:
이 그 같이 보일 것 rack-rewrite
및 rack-cache
보석을 사용하여