用rails获取本地html文件的内容

时间:2011-03-15 15:03:30

标签: ruby-on-rails parsing file local

我需要的是将本地html文件传递给我的表单,获取此文件的内容,然后解析它。 我有这个视野

  = form_tag :parser, :html => {:multipart => true} do
    = file_field_tag :html_file
    = submit_tag

这在控制器中

  def parser
    @file = params[:html_file]
  end

似乎表单没有获取文件,只需获取文件名称的字符串。如何解决?

1 个答案:

答案 0 :(得分:2)

我写了这个来处理Rails 2.3.x应用程序中的上传。我不记得为什么我必须将它拆分成if / elsif / else / end语句,但是我必须在将它合并到一个if语句时出错。

    if %w(File Tempfile ActionController::UploadedTempfile ).include?(params[:html_file].class.to_s)          
      data = params[:html_file].read
    elsif %w(StringIO ActionController::UploadedStringIO).include?(params[:html_file].class.to_s)
      data = params[:html_file].read
    else
      logger.error("File does not appear to be a valid class.")
    end