2010-11-19 12 views
4

私はレール3ペーパークリップを使用します。私のロジックは、ユーザーが画像をアップロードすることを可能にする。ユーザーがイメージではないファイルを選択しない限り正常に動作します。Paperclip - Image Uploading Error: "'identify'コマンドで認識されません。"

ユーザーがテキストファイルを選ぶ場合、例えば、検証が通過するが、このエラーで終わる:

5 errors prohibited the profile update: 

Profile pic content type is not one of image/jpeg, image/png, image/gif 
Profile pic /var/folders/lF/lF0Ne5vGFj44kV54W3zBdU+++TI/-Tmp-/stream20101118-229-17xuiu4-0.js is not recognized by the 'identify' command. 
Profile pic /var/folders/lF/lF0Ne5vGFj44kV54W3zBdU+++TI/-Tmp-/stream20101118-229-17xuiu4-0.js is not recognized by the 'identify' command. 
Profile pic /var/folders/lF/lF0Ne5vGFj44kV54W3zBdU+++TI/-Tmp-/stream20101118-229-17xuiu4-0.js is not recognized by the 'identify' command. 
Profile pic /var/folders/lF/lF0Ne5vGFj44kV54W3zBdU+++TI/-Tmp-/stream20101118-229-17xuiu4-0.js is not recognized by the 'identify' command. 

少なくとも最初のエラーは、ファイルタイプを指します。ユーザーが.PXMのようないくつかのより多くの特定のファイルを、アップロードした場合しかし、その後、Railsは奇妙な振る舞いと、これを示しています

4 errors prohibited the profile update: 

Profile pic /var/folders/lF/lF0Ne5vGFj44kV54W3zBdU+++TI/-Tmp-/stream20101118-229-1scwkg7-0.pxm is not recognized by the 'identify' command. 
Profile pic /var/folders/lF/lF0Ne5vGFj44kV54W3zBdU+++TI/-Tmp-/stream20101118-229-1scwkg7-0.pxm is not recognized by the 'identify' command. 
Profile pic /var/folders/lF/lF0Ne5vGFj44kV54W3zBdU+++TI/-Tmp-/stream20101118-229-1scwkg7-0.pxm is not recognized by the 'identify' command. 
Profile pic /var/folders/lF/lF0Ne5vGFj44kV54W3zBdU+++TI/-Tmp-/stream20101118-229-1scwkg7-0.pxm is not recognized by the 'identify' command. 

誰もがここで何が起こっているか知っていますか?

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

...と、このクリップ初期化子:私は私のモデルに次のコードを持って

Paperclip.options[:command_path] = "/opt/local/bin/" 

ImageMagikには、インストールされ、正しく設定されるように表示されます。

$ which Magick-config 
/opt/local/bin/Magick-config 

ありがとう!

+1

「which identify」、「locate identify」または「find/-name identification」は何を返しますか? – Eric

+0

$ which /opt/local/bin/identify – AnApprentice

+0

私はこれをコカイン0.3.2で修正しました。 http://stackoverflow.com/questions/12753157/paperclipnotidentifiedbyimagemagickerror-in-spreeadminimagescontrollercre/12771707#12771707 –

答えて

3

私は、PaperclipとRails 2.3.8で同じ問題がありました。 モデルのhas_attached_file宣言では、画像ファイル以外のファイルの場合は:stylesを削除してください。

3

次のコードをモデルに貼ります。非画像ファイルは処理されません。

before_post_process :image? 
def image? 
    !(data_content_type =~ /^image.*/).nil? 
end 
関連する問題