python django에서 GoogleAnaritics를 소개하고 싶습니다! ! !
파이썬, 장고에 Google 애널리틱스를 도입하는 데 성공했습니다! !
전제조건으로서 GoogleAnaritics는 이미 등록되어 있고 이 화면을 낼 수 있는 것.
분명히 말해서 이것을 보면 할 수 있습니다.
htps : // m / ch t 등 / / ms / 43c3 581c0c8d632cdc5
다만 한층 더 초보자용으로 보충 해설하려고 생각 여기에 쓰기로 했습니다.
애플리케이션의 views.py 또는 apps.py가있는 곳
context_processors.py
라는 이름으로 파일을 만듭니다.
그건 그렇고, 나는 하나의 장고 프로젝트에 polls 응용 프로그램과 보드 응용 프로그램의 두 가지 응용 프로그램을 만들었기 때문에 context_processors.py는 두 가지를 만들었습니다.
내용은 이렇게 씁니다.
from django.conf import settings
def google_analytics(request):
ga_tracking_id = getattr(settings, 'GOOGLE_ANALYTICS_TRACKING_ID', False)
if not settings.DEBUG and ga_tracking_id:
return {
'GOOGLE_ANALYTICS_TRACKING_ID': ga_tracking_id,
}
return {}
htps : // m / ch t 등 / / ms / 43c3 581c0c8d632cdc5
내 코드보다 원래 사이트의 코드가 해설도 붙어있어 좋다고 생각합니다!
하나 보충한다면
settings
라고 쓰는 부분. 나는 로컬 환경과 서버 환경에서 pro_settings와 settings.py를 구분하고 있지만, 별도로 pro_settings.py로 다시 쓰지 않아도 제대로 작동합니다.
pro_settings.py는 setting.py에서 변경하고 싶은 곳만 덮어 쓰고 있고 다른 것은 그대로 읽고있는 것만이므로 당연하지만 ....
이제 setting.py의 설정을 변경하십시오.
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [os.path.join(BASE_DIR, 'templates')], # 404ページ用に記載
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
'django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
'polls.context_processors.google_analytics',←追加
'board.context_processors.google_analytics',←追加
],
},
},
]
추가 부분은
アプリケーション名.context_processors.google_analytics'
응용 프로그램에서 google_anaritics를 사용할 수 있도록합니다.
방금 전도 말했지만 나는 프로젝트 내에 2개의 어플리케이션이 있으므로 2개 썼습니다.
추가 settings.py 어딘가에 다음을 추가
GOOGLE_ANALYTICS_TRACKING_ID = 'トラッキングID'
추적 ID는이 이미지의 빨간색으로 숨겨진 부분입니다.
그런 다음 html이 저장된 디렉토리에 ga.html이라는 파일을 만듭니다.
내용은 이렇게.
<!-- Global site tag (gtag.js) - Google Analytics -->
<script async src="https://www.googletagmanager.com/gtag/js?id=トラッキングID"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'トラッキングID');
</script>
그렇다면 이것은
여기에 작성된 코드와 정확히 동일합니다.
즉 GoogleAnaritics를 로드하는데 주어진 코드를 ga.html에 기재하고 있네요.
다만 이것에서는 ga.html에서 밖에 이 코드는 반영되어 있지 않으므로 그 외에 페이지에서도 사용할 수 있도록 설정을 합니다.
base.html 부분에 다음과 같이 기재하십시오.
{% if GOOGLE_ANALYTICS_TRACKING_ID %}
{% include 'アプリケーション名/ga.html' %}
{% endif %}
1. GOOGLE_ANALYTICS_TRACKING_ID가 True이면
2.ga.html 로드
1. GOOGLE_ANALYTICS_TRACKING_ID는 settings.py에서
GOOGLE_ANALYTICS_TRACKING_ID = 'トラッキングID'
로 설정했으며,
2.ga.html도 방금 만들었습니다.
아! 당연한 이야기이지만 실제로 여러가지 움직이고 싶은 html의 맨 위에 제대로
{% extends 'アプリケーション名/base.html' %}
라고 쓰지 않으면 base.html이 로드되지 않기 때문에 ga.html도 로드되지 않고 GoogleAnaritics 할 수 없기 때문에.
알겠다고 생각합니다만.
서버 환경에서는 DEBUG는 False가 되어 있을 것이므로 이것으로 배포를 하면, GoogleAnaritics가 읽을 수 있을 것이다.
Reference
이 문제에 관하여(python django에서 GoogleAnaritics를 소개하고 싶습니다! ! !), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/sr2460/items/bf4ffcf6543055f8aad8텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)