8

我在 /assets/javascripts/globals.js.erb 中使用 Rails 3.2.13 和 JavaScript。无论如何可以访问 JavaScript 文件中的 Rails 助手或控制器数据吗?就像是...

var App = {
  globals: {
    user: {
      name: '<%= current_user.name %>'
    }
  }
};
4

1 回答 1

14

你不能那样做。资产在生产中编译一次,因此它不应依赖于请求的状态(如当前用户,或传递给请求的参数)。您可以做的最接近的事情是在应用程序布局中添加一个全局变量

<script type="javascript">
  App.globals.user.name = <%= current_user.name %>
</script>
于 2013-03-19T02:20:25.870 回答