Ruby on rails 如何在Rails中保存完整的html页面

Ruby on rails 如何在Rails中保存完整的html页面,ruby-on-rails,ruby,asset-pipeline,Ruby On Rails,Ruby,Asset Pipeline,我正在尝试使用 发送_数据(将_呈现为_字符串,:filename=>“foo.html”) 文件保存得很好,但是缺少css 我尝试添加type属性,如下所示: 发送数据(将数据呈现为字符串:filename=>“foo.html”,:type=>“text/html”) 但这没用 如何将文件与所有css(以及其他可能的资源)一起保存,以便如果单击保存的文件,我将看到与我尝试保存的相同的内容?您需要使用一些爬虫来获取包含所有资源的页面,然后gzip并发送结果。render\u to\u stri

我正在尝试使用

发送_数据(将_呈现为_字符串,:filename=>“foo.html”)

文件保存得很好,但是缺少css

我尝试添加type属性,如下所示:

发送数据(将数据呈现为字符串:filename=>“foo.html”,:type=>“text/html”

但这没用


如何将文件与所有css(以及其他可能的资源)一起保存,以便如果单击保存的文件,我将看到与我尝试保存的相同的内容?

您需要使用一些爬虫来获取包含所有资源的页面,然后gzip并发送结果。

render\u to\u string仅呈现html部分。它返回的字符串与浏览器加载html页面时收到的字符串完全相同。样式表和其他资产将在其他请求中加载。因此,我只看到一种可能的方法:
render_to_string
一个所有资源都内联的html布局


另一个选项可能是使用Javascript打开“另存为”对话框。但是似乎没有标准化的方法来做到这一点。

标题与问题不符。您想保存html页面还是所有相关文件?谢谢。听起来不错。我很惊讶,虽然没有标准的方法来做这件事。我最后所做的正是你所建议的。我将相关的CSS填充到两个标记之间的部分中,并且仅当用户单击下载链接时才调用该部分:
=render'enable_download_CSS'if@download