obecnie z Carrierwave, po wgraniu pliku jak foo.png podczas tworzenia różnych wersji tak:Carrierwave: Przenieś nazwy wersji na końcu nazwy pliku, zamiast z przodu
class ImageUploader < CarrierWave::Uploader::Base
include CarrierWave::MiniMagick
storage :fog
def store_dir
"#{model.class.to_s.underscore}/#{model.id}"
end
version :thumb do
process :resize_to_fit => [500, 500]
end
end
że wyniki w przesyłanych plików jako :
thumb_foo.png
foo.png
Chcę przenieść kciuk na koniec nazwy pliku z powodów SEO. Na podstawie ich docs tutaj dodałem:
def full_filename(for_file)
if parent_name = super(for_file)
extension = File.extname(parent_name)
base_name = parent_name.chomp(extension)
[base_name, version_name].compact.join("_") + extension
end
end
def full_original_filename
parent_name = super
extension = File.extname(parent_name)
base_name = parent_name.chomp(extension)
[base_name, version_name].compact.join("_") + extension
end
Docs powiedzieć to powinno skutkować:
foo_thumb.png
foo.png
jednak skończę rzeczywiście coraz następujący:
thumb_foo_thumb.png
foo.png
jakiś pomysł co Robię źle?
Dzięki
Czy próbowałeś [dostosować nazwy wersji pliku] (https://github.com/carrierwaveuploader/carrierwave/wiki/How-to:-Customize-your-version-file-names)? Jest to także wersja ruchu do końca nazwy pliku – Thanh