我在Rails 3.2应用程序的js.coffee.erb文件中有以下行。如何访问coffeescript中的环境变量?
<%= ENV['MY_KEY'] %>
该应用程序部署到Heroku,当我运行heroku配置我看到MY_KEY列出的值。
然而,当我检查编译JavaScript文件存在这样的情况ENV['MY_KEY']
值应该是一个空白。
据我所知,应该可以访问在CoffeeScript的资产环境变量。这里可能会出现什么问题?
我在Rails 3.2应用程序的js.coffee.erb文件中有以下行。如何访问coffeescript中的环境变量?
<%= ENV['MY_KEY'] %>
该应用程序部署到Heroku,当我运行heroku配置我看到MY_KEY列出的值。
然而,当我检查编译JavaScript文件存在这样的情况ENV['MY_KEY']
值应该是一个空白。
据我所知,应该可以访问在CoffeeScript的资产环境变量。这里可能会出现什么问题?
您的应用程序的配置瓦尔不是默认情况下在环境中可用。要做到这一点,您可以启用Heroku Labs功能user-env-compile
。
谢谢瑞安,我已经尝试过,但没有成功。没有Lans功能,如果我在视图模板中渲染,但在js文件中不可用,则此配置变量可用。当我激活实验室功能时,我的应用程序会抛出指示资产未编译的错误。这是预期的行为? –
你可以设置和访问本地环境变量?的 –
可能重复[Heroku的始终运行资产:预编译与为Rails 3.2的生产环境(http://stackoverflow.com/questions/9830244/heroku-always-runs-assetsprecompile-with-the-production-environment-for- rails-3) – phoet
@RossPenman如果我在一个视图中渲染这个env变量,它会按预期显示。 –