【发布时间】:2011-10-21 18:34:06
【问题描述】:
我正在使用 Rails 3.1 和 Backbone 以及主干导轨 gem。观看次数为jst.ejs
有什么方法可以在视图中使用 HAML?这些视图是在生产环境中预编译的吗?
【问题讨论】:
标签: javascript ruby-on-rails ruby-on-rails-3.1 backbone.js
我正在使用 Rails 3.1 和 Backbone 以及主干导轨 gem。观看次数为jst.ejs
有什么方法可以在视图中使用 HAML?这些视图是在生产环境中预编译的吗?
【问题讨论】:
标签: javascript ruby-on-rails ruby-on-rails-3.1 backbone.js
您可以使用 haml_coffee_assets 在 Rails 3.1 资产管道中使用 haml-coffee 模板。 Haml-Coffee 是 CoffeeScript 中的完整 HAML 实现,使用 haml_coffee_assets 模板在后端编译并转换为纯 JavaScript 模板,因此在客户端渲染期间不需要 CoffeeScript。
【讨论】:
看起来这就是您要查找的内容。 https://github.com/uglyog/clientside-haml-js
使用主干(和 jQuery 选择器)在客户端渲染 Haml:
将 haml.compileHAML(template) 放入你的 render() 函数 ala:
render: function(){
var fn = haml.compileHaml(template);
$(this.el).html(fn({});
return this;
}
【讨论】:
我目前正在使用这个 gem:https://github.com/infbio/haml_assets,它工作正常。
【讨论】:
我不熟悉 JST,但我对 HAML 和 jQuery 模板做同样的事情: http://lostechies.com/derickbailey/2011/06/22/rendering-a-rails-partial-as-a-jquery-template/
【讨论】:
在这个 gem 的描述中https://github.com/codebrew/backbone-rails 说你可以使用 HAML,但我没有尝试。
【讨论】: