窗户上的红宝石7

时间:2012-05-14 17:27:36

标签: ruby-on-rails ruby eruby

我试图搜索我是否可以在我的windows7机器上安装eruby,但无法找到任何东西。我可以找到如何在apache上安装它。但我想在我的win7机器上安装它。

我希望我可以通过将其嵌入HTML中来使用它,就像我们在HTML中嵌入vbscript并打开html页面一样。我在正确的道路上吗?

1 个答案:

答案 0 :(得分:2)

听起来你并不完全了解eRuby是如何运作的,所以让我澄清一下:

当您使用Web浏览器在计算机上打开HTML文件时,Web浏览器正在从磁盘读取文件的字节,将其解释为HTML文档,并相应地显示它。 Web浏览器了解HTML(以及JavaScript和CSS)。

像ERB / eRuby / Erubis这样的模板化语言使用Ruby编程语言来运行嵌入在网页中的任意代码,并将该代码的结果替换为它生成的文本。最终文本发送到Web浏览器;浏览器永远不会看到Ruby代码,而是只看到HTML(以及JavaScript和CSS)。

为此,Web浏览器无法从磁盘打开文件:
file:///C:/Users/Phrogz/Desktop/foo.erb
...但必须从Web服务器(如Apache)请求文件:
http://localhost/test/foo
在将修改后的内容发送到浏览器之前运行eRuby处理器。

您可以使用Ruby创建一个非常简单的Web服务器,使用简单的Web框架(例如Sinatra)处理内容。但是,这仍然需要您在发出请求之前在计算机上启动Web服务器进程。

简而言之:

不,您不能“在Windows 7上安装eRuby”,以便通过Web浏览器从磁盘打开文件运行Ruby代码。

如果您需要无服务器解决方案,您可以改为查看client-side templating language,例如dust.js,它在网络浏览器上的JavaScript 中运行,因此可以投放来自简单的file:协议。

如果你有一台服务器,我建议使用Haml作为模板语言的Sinatra和(而不是ERB)。