如何在coffeescript文件中使用rails配置文件中的参数

时间:2016-03-06 06:52:13

标签: ruby-on-rails coffeescript

在我的自定义rails配置文件中,我有" MyApp :: Application.config.x.retries = 3"

有没有办法在coffesscript中调用它,就像我们在控制器或视图中使用" Rails.configuration.x.retries" ?

3 个答案:

答案 0 :(得分:1)

如果您将这些配置值(从ruby)导出到javascript,那么您应该可以在咖啡脚本文件中使用它们。

例如,在您的布局文件(例如:application.html.erb)中添加以下内容:

<%= javascript_tag do %>
  window.retries = <%= MyApp::Application.config.x.retries %>;
<% end %>

然后在您的咖啡脚本文件中,您可以通过window.retries访问它。

答案 1 :(得分:0)

我使用了RailsCast编号324

中提供的解决方案
<%= content_tag "div", id: "link", data: { url: Rails.configuration.x.link } do %><% end %>

答案 2 :(得分:0)

我注意到你找到了一个解决方案但是为了记录,另一个选择是将ruby嵌入到你的coffeescript文件中,并将你的配置数据作为json返回。

例如......

my_app.coffee.erb

class MyApp
    @config = <%= MyApp::Application.configuration.to_json %>

注意我使用的coffeescript类更像是一个命名空间。我可以按照MyApp.config['x']['retries']

的方式打电话