4

Eco 是一种嵌入式 Coffeescript 模板语言。它类似于 ERB。有没有办法可以将它用作 Rails 应用程序中的服务器端模板语言?

最终目标是在客户端和服务器上使用一些用 Eco 编写的部分。

4

5 回答 5

10

我刚刚注意到 Rails 3.1 将支持这一点。基本上,Sam Stephenson 刚刚发布了 ruby​​-eco 并连接了 sprockets 来使用它。所以这意味着在你的视图模板中使用 .eco 现在可以正常工作了。

链接到提交

于 2011-06-05T15:45:17.537 回答
3

https://github.com/sstephenson/ruby-eco

于 2011-06-06T03:26:58.600 回答
3

放入gem 'eco'您的 Gemfile 并命名您的文件,.jst.eco它应该可以在 Rails 3.1 中正常工作

于 2011-10-22T16:42:55.713 回答
2

[更新: 正如 Ben 在下面指出的那样,Eco 的创建者和 Rails 核心团队的成员 sstephenson 创建了一种名为ruby ​​-eco 的东西,它可以让两者一起玩得很好。我在下面的原始答案早于该项目。]

直接执行是不可能的,因为Eco在 Node.js 上运行,并且您不能直接在 Rails 中运行 Node.js(请参阅这个相关问题)。

您可以将 Rails 应用程序中的某些路由代理到在不同端口上运行的 Node.js 应用程序,但是在两个应用程序之间传递信息没有任何简单的方法,因此这可能毫无意义。

目前,Eco vs. Rails 是一个非此即彼的决定。但是,如果您不愿意从 Rails 跃迁到 Node,您仍然可以使用Johnson在服务器端进行 JavaScript 模板,它可以让您从 Ruby 运行 JS。(据我所知,还没有人编写过 CoffeeScript-Johnson 集成——不过,您可以很容易地自己编写一个,使用coffee -pe命令将 CoffeeScript 转换为 JavaScript。)

于 2011-02-27T02:54:54.220 回答
1

我有一个项目使用 eco inside rails 作为像 Liquid 这样的安全模板系统。我称它为 Ice 并在http://github.com/ludicast/ice结束。

最初,我使用了一些通用的 javascript 模板引擎,但围绕 eco 聚集的蒸汽使它成为一个简单的选择。

于 2011-06-09T21:26:04.650 回答