ちょっと変更

久しぶりに日記。本業が忙しすぎて、何もできず。
少しだけファイルのアップダウンの処理を変更。
サーバに保存するファイル名がURLエンコードになるのはいやだったので、
レコードのIDで保存するように変更。

  def create
    upload = params[:doc]
    doc = Document.create( :filename=>upload['file'].original_filename )
    path = "/files/" +doc.id.to_s;
    File.open( path, "wb") { |f| f.write( upload['file'].read ) }
  end

  def download
    doc = Document.find(params[:id])
    path = "/files/" + doc.id.to_s;
    send_file(path, :filename => filename_for_content_disposition(doc.filename))
  end

FireFoxを入れてうまくいくか試した。OKだね。IEだとやっぱりURLエンコードのファイル名で
オープンされてしまう。
いろいろサイトを調べるとiconvを使っている人が多い。
今度これを試してみよう。