0

Rails 3.2.11 から Rails 2.3.11 にダウングレードしましtempfileたが、csv ファイルがサーバーにアップロードされているときに にアクセスできません。

呼び出すとコードが壊れます

tmppath = csv.tempfile.to_path.to_s

そして、これが私のサーバーログのトレースです..

Processing YoloController#createByCSV (for 10.1.109.132 at 2013-03-08 10:57:11) [POST]
  Parameters: {"csv"=>#<File:/var/folders/5g/xxxxxxxxx/T/RackMultipartxxxxxxx-xxxxxx-81xb7d-0>}

NoMethodError (undefined method `tempfile' for #<Tempfile:0x10c0f8ce8>):
  app/controllers/yolos_controller.rb:67:in `createByCSV'
  vendor/bundle/ruby/1.8/gems/actionpack-2.3.11/lib/action_controller/base.rb:1333:in `send'

どんなアイデアでも大歓迎です。

4

1 に答える 1

2

エラーとRuby 1.8のドキュメントから判断します。csvはすでに ですTempfile。その上で直接パスを呼び出します:csv.path.to_s

http://ruby-doc.org/stdlib-1.8.7/libdoc/tempfile/rdoc/Tempfile.html#method-i-path

于 2013-03-08T19:22:14.830 に答える