文档上传(doc,docx,odt等)并在Rails中显示(作为文本)?

时间:2012-10-19 11:39:03

标签: file-upload ruby-on-rails-3.2 document

有人知道如何上传文档以便稍后在Rails应用程序中显示(作为文本)吗? Paperclip是正确的宝石吗?如果是这样的话? (我之前用Paperclip上传了图片。)

1 个答案:

答案 0 :(得分:1)

我喜欢Paperclip。它似乎有很好的记录,并且对我所需要的一切都很有效。 (我个人并不知道他们中的任何一个,但是在那些聪明的人们已经创造了一些非常有用的东西,我感到非常感激他们。)

显然,您需要将Paperclip添加到您的Gemfile中,并且(如果您使用的是Bundler)进行捆绑安装

  1. 添加到您的模型

    has_attached_file :aFile
    
  2. 在您的视图中添加一些内容来捕捉您在视图中命名的内容(可能在您的创建和更新方法中)

    @profile.aFile = params[:profile][:aFile]
    
  3. 如果是必需的参数,可能应该检查它的存在

    if params[:profile][:aFile].blank?
      redirect_to @profile
    else
      render :action => 'do_something_interesting_with_file'
    end
    
  4. 就是这样。不要忘记您的配置条目。例如,如果您对文件使用某种后处理

      Paperclip.options[:command_path] = "/opt/local/bin/"
    

    我发现这非常有帮助

    RailsCast by Ryan Bates