Ecoは、埋め込まれたCoffeescriptテンプレート言語です。それはERBに似ています。Railsアプリでサーバー側のテンプレート言語としてこれを使用する方法はありますか?
最終的な目標は、Ecoで記述されたパーシャルをクライアントとサーバーの両方で使用することです。
Ecoは、埋め込まれたCoffeescriptテンプレート言語です。それはERBに似ています。Railsアプリでサーバー側のテンプレート言語としてこれを使用する方法はありますか?
最終的な目標は、Ecoで記述されたパーシャルをクライアントとサーバーの両方で使用することです。
Rails3.1がこれをサポートすることに気づきました。基本的に、Sam Stephensonはruby-ecoを公開し、それを使用するためにスプロケットを接続しました。つまり、これは、ビューテンプレートで.ecoを使用するだけで機能することを意味します。
コミットへのリンク
Gemfileを入れgem 'eco'
て、ファイルに名前を付ければ、Rails3.1で問題.jst.eco
なく動作するはずです。
[更新:Benが以下で指摘しているように、Ecoの作成者でコアRailsチームのメンバーであるsstephensonは、2つを一緒にうまくプレイできるruby-ecoと呼ばれるものを作成しました。以下の私の最初の答えは、そのプロジェクトよりも前のものです。]
EcoはNode.jsで実行され、Rails内でNode.jsを直接実行することはできないため、直接実行することはできません(この関連する質問を参照してください)。
Railsアプリから別のポートで実行されているNode.jsアプリに特定のルートをプロキシすることはできますが、2つのアプリケーション間で情報を渡す簡単な方法がないため、これは無意味である可能性があります。
当面、Ecovs.Railsはどちらか一方の決定です。ただし、RailsからNodeに飛躍する気がない場合でも、Johnsonを使用してサーバー側でJavaScriptテンプレートを実行できます。これにより、RubyからJSを実行できます。coffee -pe
(私の知る限り、CoffeeScriptとJohnsonの統合はまだ作成されていません。ただし、コマンドを使用してCoffeeScriptをJavaScriptに変換することで、自分で簡単に作成できます。)
Liquidのような安全なテンプレートシステムとしてecoinsiderailsを使用するプロジェクトがあります。私はそれをIceと呼び、 http: //github.com/ludicast/iceで終わりました。
最初は一般的なJavaScriptテンプレートエンジンを使用していましたが、エコの周りに蒸気が集まっているため、簡単に選択できました。