【问题标题】:NoMethodError (undefined method `tempfile'... in Rails 2.3.1NoMethodError(Rails 2.3.1 中未定义的方法 `tempfile'...
【发布时间】:2013-03-08 19:02:05
【问题描述】:

我已从 Rails 3.2.11 降级到 Rails 2.3.11,当我的 csv 文件上传到服务器时,我无法访问 tempfile

当我打电话时它会中断代码

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'

任何想法都将不胜感激。

【问题讨论】:

    标签: ruby-on-rails file-upload ruby-on-rails-2 ruby-1.8


    【解决方案1】:

    根据 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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-12-09
      • 2018-06-16
      • 2015-06-30
      • 1970-01-01
      • 2021-09-24
      相关资源
      最近更新 更多