またもや original_filename 

ファイルアップロードを実装すると、何故かぶち当たる問題。
コレは、一重に作者の頭の悪さによるものなのか・・・。
否今回は、Ajaxでの実装。
参考にさせてもらったHP
http://kray.jp/blog/rails3-fileupload/
http://d.hatena.ne.jp/hichiriki/touch/20101016/1287240025
ええーと、直球でいうと、真似しても駄目でした_| ̄|○
なんつーか、Railsのバージョンなのか、Ruby1.9なのか、わからないのですが、私には、出来ませんでした。
エラーは、「original_filename」の部分。
前調べた時は、form_tagの書き方でしたが、今回はAjax
そもそもform_tagなんてないし。
アレやコレやしていると、以下のHPへ
http://akira-onawa.com/2011/05/26/fleximage-%E3%81%A8-fileuploader-js/
Σ(゚Д゚)スゲェ!!っす
やっぱり、呼び出し方によって「original_filename」の挙動ちがうんすね。勉強になります。
この下のコードは、どこかのHPにあったけど、もうわからなくなってしまいました。ソースに残ってたので、転載。

    if request.xhr?
      if request.body.length == request.headers['CONTENT_LENGTH'].to_i
        file_data = request.body.read
        file_name = file
      end
    else
      if file.instance_of?(File)
        file_data = file.read
        file_name = file.original_filename
      end
    end
###### 中略 ######
## dst_file は、格納するファイルのフルパス
    if request.xhr?
      open(dst_file, "wb") {|f| f.write(request.body.read) }
    elsif file.respond_to?(:read)
      open(dst_file, "wb") {|f| f.write(file.read) }
    else
      raise ArgumentError, "Do not know how to handle #{file.inspect}"
    end

私が説明するのもおこがましいので・・・。
ポイントは、リクエストの状況によって使い分けをしないとやっぱり駄目って事です。
って当たり前ですね。
またもや、ブログの神々に感謝。