从咖啡中调用红宝石代码:苗条标签

时间:2012-10-07 16:35:23

标签: ruby-on-rails ruby coffeescript slim-lang

  

可能重复:
  How to access instance variables in CoffeeScript engine inside a Slim template

如何在咖啡标签中使用Ruby代码?

#{}是一个很简单的构造来调用Ruby代码,但它在coffee标签中不起作用,因为`#'用于在CoffeeScript中开始注释。

coffee:
     window.awesomeIcons.currentUser = #{raw current_user.to_json} #Doesn't work

怎么办?

1 个答案:

答案 0 :(得分:2)

简单地说 - 它是不可能的(至少不是直接的)。在Slim的问题跟踪器上查看this issue。这是@minad(Slim的开发者之一)的相关位:

  

因为咖啡脚本是无法实现的   在编译时转换。你只能嵌入普通的javascript。   为避免混淆,我们没有在咖啡中实施插值   过滤

我建议使用gon gem从Rails控制器中公开一个JavaScript变量,而不是稍后在Coffee过滤器中直接访问。