Mongoid-peperclip [paperclip] Тип содержимого Подделка: Ошибка

Мне нужно загрузить несколько больших файлов 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 Я добавляю эту строку

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
Другие вопросы по тегам