7

アプリに画像をアップロードするためにペーパークリップを使用しています。私が行った検証は:

 validates_attachment_content_type :image, :content_type => ['image/jpg','image/jpeg', 'image/png', 'image/tiff', 'image/gif']

Firefox、Chorme、IE9ではすべてがうまく機能します。しかし、IE8では、「写真の画像コンテンツタイプが無効な形式です!!!」というエラーが発生します。

どんな解決策や手がかりも大歓迎です。

4

3 に答える 3

12

image/pjpegコンテンツタイプに追加の画像形式が必要だと言います:content_type => ['image/pjpeg']

以下は確かに役に立ちます。

http://blog.joshsoftware.com/2010/11/26/paperclip-validates_attachment_content_type-always-fails-in-ie-6-and-7-for-jepg-and-png-image/

http://blog.siyelo.com/tip-of-the-day-mime-types-for-paperclip-ie8

于 2011-06-27T08:32:03.727 に答える
2

代わりにこれを試すことができます:content_type => /image/

于 2011-06-27T04:01:02.967 に答える
1

前の回答を誤解されている可能性があると思います。彼が提案していたのは、前にスラッシュを追加する代わりに、「画像」という単語を含める際に正規表現を使用することでした。したがって、変更されたコードは次のようになります。

validates_attachment_content_type :image, :content_type => /image/

// は、配列内の各要素によって明示的にではなく、コンテンツ タイプに正規表現を使用していることを意味します。上記は content_type 文字列全体を検索して画像に一致させるか、もう少し厳密にして次のように使用できます。

validates_attachment_content_type :image, :content_type => /^image/

これは、文字列が「image」という単語で始まる必要があることを意味します。これは、IE でも同様に役立つはずです。

于 2011-06-27T07:29:10.810 に答える