通过JST支持正面和背面共享导轨模板

时间:2013-01-16 05:33:53

标签: ruby-on-rails templates sprockets jst

我想在rails应用程序中在正面和背面之间共享js模板,以用于复制代码的情况。

要求是:

  • 下划线(ejs)或手柄/胡子模板。最好是ejs,因为我已经使用了下划线客户端。
  • 我还想利用rails资源管道将它们拉入JST对象/函数中,这样我就可以将模板文件分开,并获得缓存等其他好处。

我发现一些宝石适用于一个案例或另一个案例,如handlebars_haml_assets,ejs,FlavourSaver等,但没有一个允许开箱即用的所有这些要求。正面和背面共享js模板的最佳方法是什么?在rails 3 app中使用JST?

1 个答案:

答案 0 :(得分:0)

Rails 3.2资产管道,开箱即用,支持嵌入式Javascript(EJS)或嵌入式CoffeeScript(Eco)模板,并使用JST(JavaScript模板)命名空间提供。只需恰当地命名您的文件:

app/assets/templates/top_level.jst.ejs
app/assets/templates/subdir/nested.jst.eco

在javascript中使用它们:

var html = JST['top_level']({ data: 'something' });
var html = JST['subdir/nested']({ data: 'something' });