我不确定是什么导致了这一点,并且会喜欢一些见解:
Started POST "/uploads.js" for 127.0.0.1 at 2011-02-21 09:14:36 -0500
Processing by UploadsController#create as JS
Parameters: {"name"=>"DSC_0561.JPG", "chunk"=>"0", "chunks"=>"1", "upload"=>{"stage_id"=>"16"}, "authenticity_token"=>"SfNGZm4lP56eG94OliSo2Kk9Tikg+X2pHaGoRLdbUmg=", "file"=>#<ActionDispatch::Http::UploadedFile:0x000001080f7ce8 @original_filename="DSC_0561.JPG", @content_type="application/octet-stream", @headers="Content-Disposition: form-data; name=\"file\"; filename=\"DSC_0561.JPG\"\r\nContent-Type: application/octet-stream\r\n", @tempfile=#<File:/var/folders/+u/+u1vHpefHhSOuO43TGuqe++++TI/-Tmp-/RackMultipart20110221-9189-1ig5c62>>}
[paperclip] identify -format %wx%h '/var/folders/+u/+u1vHpefHhSOuO43TGuqe++++TI/-Tmp-/stream20110221-9189-1o6ij3e.JPG[0]' 2>/dev/null
[paperclip] convert '/var/folders/+u/+u1vHpefHhSOuO43TGuqe++++TI/-Tmp-/stream20110221-9189-1o6ij3e.JPG[0]' -resize "64x64" '/var/folders/+u/+u1vHpefHhSOuO43TGuqe++++TI/-Tmp-/stream20110221-9189-1o6ij3e20110221-9189-kssuro' 2>/dev/null
Completed 422 Unprocessable Entity in 1143ms (Views: 0.8ms | ActiveRecord: 1.5ms)
不确定Paperclip是否抛出此错误,或者是否是ImageMagick或其他内容。
Edit1:所以它似乎抛出了这个错误,因为我上传的文件扩展名为“.JPG”,一旦我将其更改为“.jpg”就可以了。但我不确定如何妥善解决这个问题。
答案 0 :(得分:2)
Rails返回状态代码422表示验证失败,因此您可能正在验证上传的内容类型,但它总是application/octet-stream
,因为您上传的内容并未正确设置。
您可以使用mime-types
gem修复此问题,但理想情况下,您可以修复上传代码以正确设置mime类型。
mime_types = MIME::Types.type_for(params[:file])
file.content_type = mime_types.first.to_s if mime_types.first