こんにちは、tahara です。
Android からのファイルアップロードはエントロピーの神々に支配されているのでしょうか? 拡張子なし、Content-Type: application/octet-stream で jpeg ファイルが ブラウザから POST されたりします。
そんな POST に対応するには(Paperclip 使用)...
class TempFile < ActiveRecord::Base has_attached_file :temp before_post_process :ensure_temp_file_name_extension protected def ensure_temp_file_name_extension return true unless File.extname(self.temp_file_name) == '' unless VALID_IMAGE_CONTENT_TYPE.include?(self.temp_content_type) file = Paperclip.io_adapters.for(temp) self.temp_content_type = Paperclip::FileCommandContentTypeDetector.new(file.path).detect end extension = MIME::Types[self.temp_content_type].first.extensions.first rescue nil if extension self.temp_file_name = self.temp_file_name + '.' + extension end true end end