Ruby 在脚本中插入 ENV[api_key]

Ruby insert ENV[api_key] in script

在 application.yml 我有 api_key: 1234567890

如果我这样做(直接插入 api 键 'appid')它会工作(小部件显示和填充):

<script>
  window.myWidgetParam ? window.myWidgetParam : window.myWidgetParam = [];  window.myWidgetParam.push({id: 15,cityid: '2643743',appid: '1234567890' %>,units: 'metric',containerid: 'openweathermap-widget-15',  });  (function() {var script = document.createElement('script');script.async = true;script.charset = "utf-8";script.src = "//openweathermap.org/themes/openweathermap/assets/vendor/owm/js/weather-widget-generator.js";var s = document.getElementsByTagName('script')[0];s.parentNode.insertBefore(script, s);  })();
</script>

但是如果我这样做(插入 <%= ENV["api_key"] %>)它不会(由于缺少 api 键周围的引号,小部件未显示):

<script>
  window.myWidgetParam ? window.myWidgetParam : window.myWidgetParam = [];  window.myWidgetParam.push({id: 15,cityid: '2643743',appid: <%= ENV["api_key"] %>,units: 'metric',containerid: 'openweathermap-widget-15',  });  (function() {var script = document.createElement('script');script.async = true;script.charset = "utf-8";script.src = "//openweathermap.org/themes/openweathermap/assets/vendor/owm/js/weather-widget-generator.js";var s = document.getElementsByTagName('script')[0];s.parentNode.insertBefore(script, s);  })();
</script>

我错过了什么?

appid: '<%= ENV["api_key"] %>'怎么样?

我会做:

<%== ENV['api_key'].to_json %>