我使用carrierwave上傳圖像。我遇到的問題是content_type沒有保存到數據庫中。我可以看到content_type被傳遞到請求中(如下所示),但似乎沒有將其傳遞給數據庫。Carrierwave未設置content_type
upload.rb
class Upload < ActiveRecord::Base
mount_uploader :file, FileUploader
attr_accessible :file
end
file_uploader.rb
require 'carrierwave/processing/mime_types'
class FileUploader < CarrierWave::Uploader::Base
include CarrierWave::MimeTypes
storage :fog
process :set_content_type
end
uploads_controller.rb
def create
@upload = Upload.new params[:upload]
if @upload.save
render :json => @upload
end
end
schema.rb
create_table "uploads", :force => true do |t|
t.date "expired_at"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
t.string "file"
t.text "slug"
t.string "file_content_type"
end
POST請求
Started POST "/uploads" for 127.0.0.1 at 2013-04-11 22:54:56 -0400
Processing by UploadsController#create as */*
Parameters: {"name"=>"IMG_0004.JPG", "authenticity_token"=>"00kuSJQvgkWmCo+bWBQQzhzwC2qWdsF6T3K6DLuv0l8=", "upload"=>{"file"=>#<ActionDispatch::Http::UploadedFile:0x007fcb34399570 @original_filename="IMG_0004.JPG", @content_type="image/jpeg", @headers="Content-Disposition: form-data; name=\"upload[file]\"; filename=\"IMG_0004.JPG\"\r\nContent-Type: image/jpeg\r\n", @tempfile=#<File:/var/folders/9f/zccg30y961g1kl0zc_kzkfw00000gn/T/RackMultipart20130411-90625-1je1uyu>>}}
不工作的MIME類型字段。我嘗試過使用':content_type'以及':file_content_type',並且這兩列都沒有設置 –