Ruby вставить ENV [api_key] в скрипт - PullRequest
0 голосов
/ 25 апреля 2018

В 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>

Чего мне не хватает?

Ответы [ 2 ]

0 голосов
/ 25 апреля 2018

Я бы сделал:

<%== ENV['api_key'].to_json %>
0 голосов
/ 25 апреля 2018

Как насчет appid: '<%= ENV["api_key"] %>'?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...