Я пытаюсь добавить тег Google Analytics в свое веб-приложение, которое запускает Ruby на Rails.
Я хотел бы развернуть один и тот же код в нескольких средах: разработка, подготовка, производство, и настроить разные идентификаторы отслеживания Google Analytics с помощью переменной среды в каждом из этих экземпляров. Каждая из моих сред настроена на отдельный домен, поэтому я настроил отдельные свойства в Google Analytics и установил новую переменную среды (GOOGLE_ANALYTICS_TRACKING_ID
) на серверах.
Я хотел бы использовать частичное Файл Haml для хранения тега Google Analytics и использования переменной среды. Я нашел пример в « Не могу заставить Google Analytics работать над проектом rails », но я не знаю, как передать переменную окружения в.
app / views / stubs / _ga. haml:
:javascript
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
ga('create', GOOGLE_ANALYTICS_TRACKING_ID_ENV_VAR, 'auto');
ga('send', 'pageview');
app / views / layouts / base. html .haml:
%html
%head
= stylesheet_link_tag 'application', media: 'all'
= javascript_include_tag 'application'
= render 'stubs/ga'
%body
= yield
Обратите внимание, что я включил GOOGLE_ANALYTICS_TRACKING_ID_ENV_VAR
в качестве заполнителя. Я попробовал несколько представлений, но я не смог заставить работать код отслеживания. Расширение Google Tag Assistant Chrome сообщает, что на странице не было обнаружено никаких тегов, и я вижу синтаксические ошибки в консоли браузера.
Какой наилучший способ структурировать частичный код и вызов рендеринга по порядку убедиться, что код отслеживания Google Analytics является динамическим c для каждой среды и включает переменную среды?