チタンを使用した画像キャプチャを使用してから、ルビー オン レールを使用してアップロードしています。チタンでは、画像をキャプチャした後/img_uploaders/upload
、レールの URL を呼び出して呼び出すだけです。その結果、upload
メソッドへの POST リクエストが送信されます。
これは私がコンソールで得ているものです:-
Started POST "/img_uploaders/upload" for 192.168.0.180 at 2012-12-19 20:40:31 +0
530
Processing by ImgUploadersController#upload as MULTIPART_FORM
Parameters: {"media"=>#<ActionDispatch::Http::UploadedFile:0x569e308 @original
_filename="tixhr1442726854.jpeg", @content_type="image/jpeg", @headers="Content-
Disposition: form-data; name=\"media\"; filename=\"tixhr1442726854.jpeg\"\r\nCon
tent-Type: image/jpeg\r\nContent-Transfer-Encoding: binary\r\n", @tempfile=#<Fil
e:C:/Users/user/AppData/Local/Temp/RackMultipart20121219-3924-is4hsq>>}
←[1m←[35m (49.0ms)←[0m BEGIN
←[1m←[36mSQL (82.0ms)←[0m ←[1mINSERT INTO `img_uploaders` (`avatar_content_ty
pe`, `avatar_file_name`, `avatar_file_size`, `avatar_updated_at`, `created_at`,
`name`, `path`, `type`, `updated_at`) VALUES (NULL, NULL, NULL, NULL, '2012-12-1
9 15:10:31', NULL, NULL, NULL, '2012-12-19 15:10:31')←[0m
←[1m←[35m (141.0ms)←[0m COMMIT
Redirected to http://192.168.0.187:3000/
Completed 302 Found in 858ms (ActiveRecord: 277.0ms)
上記のコンソール出力に見られるように、テーブルはイメージ パスとイメージ名の null 値を取得しています。画像が保存されている場所と、画像の場所へのパスを取得する方法がわかりません。
そして、これはupload
呼び出されている私のメソッドです:-
def upload
@photo = ImgUploader.new(:avatar => params[:media])
if @photo.save
redirect_to root_url
else
render :action => 'new'
end
end