我一直在努力将Google Analytics添加到我的Rails 4应用程序中(请参阅this post)。
我通过在/public/assets/google-analytics.js
的新文件中添加Google提供的JavaScript代码来实现它。在application.html.erb
我已经包含:
<%= javascript_include_tag 'google-analytics' if Rails.env.production? %>
这样可行,但因此我没有在app/assets/javascripts/
中包含JavaScript文件,而是将其放在公共文件夹中。因此不编译JavaScript文件。
你会说这是一个很好的做法/ Rails方式吗?
我选择这个解决方案,因为否则我只能将Rails.application.config.assets.precompile += ['google-analytics.js']
添加到config / environments / production.rb(如果我将其添加到初始化程序assets.rb中,则无效) 。我发现这比上述解决方案更加混乱。
答案 0 :(得分:3)
在您的情况下,最好只将分析脚本添加到views / layouts / application.html.erb的head部分
另一种选择是使用名为_analytics.hml.erb的文件创建一个视图/共享目录,并在其中粘贴分析标记,并在您需要的视图中执行此操作:
<%= render 'shared/analytics' %>
如果你只是部分地渲染它,则根本不需要预先编译它。什么是“最佳实践”取决于意见,但如果您将其部分渲染,那么您将自己做一些时间来配置和排除尝试的方式。
在我看来,除非你特别需要某人能够访问www.your-site.com/analytics.js,否则部分是更“'Railsy'的方式