Ruby on rails 如何将渲染视图保存为静态文件?

Ruby on rails 如何将渲染视图保存为静态文件?,ruby-on-rails,Ruby On Rails,我的Rails 2.3应用程序以HTML/CSS或word文档的形式生成页面。我想将该html文件作为静态文件(即filename.html或filename.doc)保存到文件系统中。我计划使用完全呈现的页面和“保存报告”按钮进行预览操作。我们的用户稍后将访问这些静态文件。(我将保存数据库的路径。) 有什么建议吗 我正在创建一个文件并保存它,但我不确定如何将渲染视图放入其中。如果有人知道如何将其保存到S3,将获得额外积分!非常感谢 是你的朋友。如果你把它放在一个字符串中,用通常的方式把它烧录成

我的Rails 2.3应用程序以HTML/CSS或word文档的形式生成页面。我想将该html文件作为静态文件(即filename.html或filename.doc)保存到文件系统中。我计划使用完全呈现的页面和“保存报告”按钮进行预览操作。我们的用户稍后将访问这些静态文件。(我将保存数据库的路径。)

有什么建议吗

我正在创建一个文件并保存它,但我不确定如何将渲染视图放入其中。如果有人知道如何将其保存到S3,将获得额外积分!非常感谢

是你的朋友。如果你把它放在一个字符串中,用通常的方式把它烧录成文件

class FooController
  def save_foo_to_disk
    data = render_to_string( :action => :index )
    File.open(file_path, "w"){|f| f << data }
    flash[:notice] = "saved to #{file_path}"
  end
end

玩得开心点,不要用剪刀跑。

另一种方法是在动作后向控制器添加一个
,并在该动作中使用
response.body
访问渲染内容。通过这种方式,您的控制器可以正常响应客户端,同时将渲染内容保存到数据库。

渲染到字符串!!!太棒了。隐藏在ADwR的一小段中。工作得很有魅力。一旦我所有的保存工作正常,S3将是下一个。非常感谢!
AWS::S3::Base.establish_connection!(
  :access_key_id     => 'abc',
  :secret_access_key => '123'
)
S3Object.store(file_name, data, 'bucket-name')