0

我需要用俄文名或音譯文件名保存文件。我試試這個:Carrierwave俄羅斯文件名

1)在document_uploader:

def filename 
    @name ||= "#{Russian::transliterate(original_filename)}.#{file.extension}" if original_filename.present? 
end 

2)在document.rb:

我創建具有相同的邏輯before_create回調方法,但沒有看到任何結果。

上傳這樣的後文件的名稱:「______________ DOC」

我應該怎麼辦?

回答

6

如果你使用Ruby 1.9,你可以清理的文件名,這是因爲likley的人物是不是Unicode:

CarrierWave::SanitizedFile.sanitize_regexp = /[^[:word:]\.\-\+]/