【发布时间】:2015-02-17 20:56:18
【问题描述】:
我希望将 Google Analytics 添加到我的 Rails 4 应用程序中,并已阅读有关 Turbolinks 的问题。
我已使用以下答案来产生解决方法:
以下代码来自我在 assets>javascripts 下创建的新 analytics.js.coffee 文件
app/assets/javascripts/analytics.js
// Coffee
$(document).on 'page:change', ->
if window._gaq?
_gaq.push ['_trackPageview']
else if window.pageTracker?
pageTracker._trackPageview()
// Javascript
$(document).on('page:change', function() {
if (window._gaq != null) {
return _gaq.push(['_trackPageview']);
} else if (window.pageTracker != null) {
return pageTracker._trackPageview();
}
});
视图 > 布局 > _footer.html.erb(我设置的用于加载代码的文件)
<script>
(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', 'UA-837283948-1', 'myapplication.com');
ga('send', 'pageview');
</script>
然后我将以下代码放在 Views > Layouts 下的 application.html.erb 文件中
<%= render 'layouts/footer' %>
application.html.erb 文件中的渲染代码导致应用程序崩溃,所以我猜我做错了什么。我已按照指南进行操作,但无法正常工作。
感谢您的时间和努力。
【问题讨论】:
-
您考虑过使用google-analytics-turbolinks Gem吗?
-
@spickermann 不,我不知道这个解决方案。是不是和上面的一样?如果我能够通过简单的代码更改来完成上述工作,那就太好了。期待您的想法。
-
是的,基本上是一样的。看看at the source code
标签: javascript ruby-on-rails ruby google-analytics