HAML与Backbone

时间:2011-10-21 18:34:06

标签: javascript ruby-on-rails ruby-on-rails-3.1 backbone.js

我正在使用Rails 3.1和Backbone以及backbone-rails gem。视图为jst.ejs

有什么办法可以在视图中使用HAML吗?这些视图是在生产环境中预编译的吗?

5 个答案:

答案 0 :(得分:12)

您可以使用haml_coffee_assets在Rails 3.1资产管道中使用haml-coffee模板。 Haml-Coffee是CoffeeScript中的完整HAML实现,使用haml_coffee_assets,模板在后端编译并在纯JavaScript模板中转换,因此在客户端渲染期间不需要CoffeeScript。

答案 1 :(得分:3)

看起来这就是你要找的东西。 https://github.com/uglyog/clientside-haml-js

使用backbone(和jQuery选择器)在客户端上呈现Haml:

将haml.compileHAML(模板)放入render()函数ala:

render: function(){
  var fn = haml.compileHaml(template);
  $(this.el).html(fn({});
  return this;
}

答案 2 :(得分:2)

我目前正在使用这个宝石:https://github.com/infbio/haml_assets并且它正常运行。

答案 3 :(得分:0)

我不熟悉JST,但我对HAML和jQuery模板做了同样的事情: http://lostechies.com/derickbailey/2011/06/22/rendering-a-rails-partial-as-a-jquery-template/

答案 4 :(得分:0)

在这个宝石https://github.com/codebrew/backbone-rails的描述中说你可以使用HAML,但我不尝试。