2011-02-26 82 views
4

Eco是嵌入式Coffeescript模板語言。它類似於ERB。有沒有一種方法可以將它用作Rails應用程序中的服務器端模板語言?在Rails中使用Eco模板引擎

最終目標是在客戶端和服務器上使用Eco中寫入的部分內容。

+1

本教程這樣做是爲了我 - 不需要紅寶石生態寶石只是JS用法:HTTP ://stjhimy.com/posts/28-javascript-templates-using-eco – 2013-01-25 19:43:40

回答

10

我剛剛注意到Rails 3.1將支持這個。基本上,薩姆史蒂芬森剛剛發佈了ruby-eco並掛上了鏈輪來使用它。所以這意味着在你的視圖模板中使用.eco現在就可以工作。

鏈接到commit

+0

你有鏈接提到這個嗎? – user94154 2011-06-05 15:49:32

+0

Aaaand ...你贏了:) – user94154 2011-09-07 14:22:21

2

[更新:由於本低於所指出的,sstephenson - 生態的創造者和核心成員Rails的團隊創造了一種叫做ruby-eco,讓兩個發揮好起來。我的原始答案早於此項目。]

由於Eco在Node.js上運行,因此無法直接在Rails中運行Node.js(請參閱this related question),因此無法直接執行此操作。

您可以將您的Rails應用的某些路由代理到運行在不同端口上的Node.js應用,但不會有任何簡單的方式在兩個應用之間傳遞信息,因此這可能毫無意義。

目前,Eco vs. Rails是一個非此即彼的決定。但是如果你不願意從Rails跳到Node,那麼你仍然可以在服務器端使用Johnson來做JavaScript模板,它可以讓你從Ruby運行JS。 (據我所知,沒有人編寫過CoffeeScript-Johnson集成,但你可以很容易地編寫一個,但使用coffee -pe命令將CoffeeScript轉換爲JavaScript。)

+1

約翰遜看起來很有前途。它被Isotope使用(https://github.com/elado/isotope)。 – user94154 2011-03-01 14:06:03

+0

這不再是事實。有可能直接用ruby-eco做到這一點。 – 2011-07-20 05:24:54

1

我有使用生態護欄內的安全模板系統等等的液體的項目。我稱之爲冰,並在http://github.com/ludicast/ice結束。

最初我使用了一些通用的javascript模板引擎,但環繞eco的蒸汽聚集使它成爲一個簡單的選擇。

3

gem 'eco'在你的Gemfile並命名您的文件與.jst.eco它應該工作在Rails的只是罰款3.1