2014-10-02 3 views
0

Мне нужно загрузить некоторые большие файлы CSV через mongoid-paperclip, и я получаю ошибку Uploaded file2 my_file has an extension that does not match its contents. В терминале я вижу эту ошибку как [paperclip] Content Type Spoof: my_file.csv (["text/csv", "text/comma-separated-values"]), content type discovered from file command: application/octet-stream.See documentation to allow this combination. Хорошо, я установил подтверждение как do_not_validate_attachment_file_type :my_file Это не помогает при такой же ошибке. В application.rb добавить эту строкуMongoid-peperclip [paperclip] Тип содержимого Spoof: Error

Paperclip.options[:content_type_mappings] = { jpeg: 'image/jpeg', jpg: 'image/jpeg' } 

Затем изменил к этому

Paperclip.options[:content_type_mappings] = { csv: 'text/csv'} 

Он также не помогает, та же ошибка Uploaded file2 my_file has an extension that does not match its contents. Затем я изменил проверку на validates_attachment_content_type: my_file,: content_type => 'text/csv' Это также не помогло. Тогда я нашел кого-то предлагающего сделать это

`require 'paperclip/media_type_spoof_detector'   
module Paperclip   
class MediaTypeSpoofDetector   
    def spoofed?   
     false  
    end  
    end   
end 

Но где я должен это делать? в каком файле? в каком каталоге? (Я использую rails 4.0) Если кто-нибудь знает, как исправить эту ошибку, пожалуйста, дайте мне знать! Спасибо! `

ответ

1

Наконец-то! это помогло мне !!!

#config/initilizers/paperclip.rb 
require 'paperclip/media_type_spoof_detector' 
module Paperclip 
    class MediaTypeSpoofDetector 
    def spoofed? 
     false 
    end 
    end 
end 

 Смежные вопросы

  • Нет связанных вопросов^_^