Nous avons introduit Google Analytics pour collecter des données à partir du service Web que nous avons développé cette fois et que nous sommes sur le point de publier, nous allons donc vous expliquer comment le faire. Il existe un joyau appelé google-analytics-rails et il existe un moyen de l'utiliser, mais quand je regarde github, la mise à jour s'est arrêtée vers octobre 2017 (le fichier Readme a été mis à jour le mois dernier), donc je suis inquiet Alors cette fois je l'ai présenté sans bijou.
[Conditions préalables] -Inscrit dans Google Analytics. (La méthode d'enregistrement est ici)
Préparez simplement un modèle partiel pour Google Analytics et chargez-le avec la balise head.
haml:layauts/_google_analytics.html.haml
%script{async: "", src: "https://www.googletagmanager.com/gtag/js?id=ID de suivi"}
:javascript
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'ID de suivi');
if (#{raw current_user.to_json}) {
gtag('set', {'user_id': #{raw current_user.to_json}.id});
}
haml:application.html.haml
!!!
%html
%head
%meta{:content => "text/html; charset=UTF-8", "http-equiv" => "Content-Type"}
= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track': 'reload'
= javascript_pack_tag 'application', 'data-turbolinks-track': 'reload'
- if Rails.env.production?
= render 'layouts/google_analytics'
Le point ici est la dernière instruction if, qui traduit current_user en json et transmet les données si vous êtes connecté.
Il utilise également la méthode brute de ActionView :: Helpers :: OutputSafetyHelper '' pour éviter de s'échapper. Vous pouvez faire la même chose avec html_safe, mais il semble que la méthode brute soit recommandée car elle lèvera une exception si elle est nulle. (Si vous regardez le [Guide des rails](https://guides.rubyonrails.org/active_support_core_extensions.html#output-safety), vous verrez
Pour insérer quelque chose textuellement, utilisez l'assistant brut plutôt que d'appeler html_safe:
Il y a.)
https://qiita.com/t1gert1ger/items/b9a197e2d85050b9d7d6
Je sort ce que j'ai appris tous les jours! J'espère que ça t'aide. Si vous avez des suggestions, je vous serais reconnaissant de bien vouloir commenter.
Recommended Posts