Rails 3使用视图呈现明文页面

时间:2012-09-25 21:47:44

标签: ruby-on-rails plaintext

我在Rails中的数据库中存储了一个Linux配置文件,我希望能够通过Web请求下载配置

我在Linux方面的目标是卷曲/ wget网页,将其与当前配置进行比较,然后hup服务器。在脚本中很容易做到。

在Rails的正常情况下,你可以做到

render :text => @config_file

但是,我需要首先对数据进行一些格式化以应用静态标题等。这不是单行,所以我需要能够呈现视图。

我的控制器中有以下设置,但我仍然在文档中获得了一组最小的HTML标记

render(:content_type => 'text/plain', :layout => false);

之前我在.Net中做过类似的事情,因此打印出一个文本文件\n进行了解释。我如何在Rails中获得它?

1 个答案:

答案 0 :(得分:8)

通常,这是通过

完成的
# config/initializers/mime_types.rb
# ...
# Mime::Type.register "text/plain", :plaintext
# No changes needed as rails comes preconfigured with the text/plain mime type


# app/controllers/my_controller.rb

class MyController < ApplicationController
  def my_action
    respond_to do |format|
      format.text
    end
  end
end

和视图文件

# app/views/my_controller/my_action.text.erb
...

关于您在DOM中找到的最小HTML:您是否在某种浏览器内检查器中看到了这一点,例如google chrome或safari中包含的那些?如果是这样,请不要担心,浏览器会添加此内容以便内联显示文本/纯文档。如果查看交付文档的来源(ctrl-u),则不应显示HTML。