네비게이션 바에 오늘 날씨를 넣고 싶습니다.

기상청 api를 사용하여 현재 날씨와 기온을 받아오는 py파일은 만들었습니다.

이 정보를 navbar.html 에 적용하여 어느 페이지든 날씨와 기온을 보이게 하고 싶습니다.

그런데 navbar.html 이 어떠한 view나 url을 통해서 보여지는게 아닌거 같아서 질문 드립니다.

base.html과도 분리 되어 있는 navbar.html에 날씨 데이터 context를 전달할 수 있는 방법을 알고 싶습니다.

조언 부탁드려요

hhgg 80

2021년 8월 31일 9:50 오후

목록으로
1개의 답변이 있습니다. 1 / 1 Page

navigation 바는 모든 페이지에 추가되는 페이지라서 그쪽에 날씨 api를 넣으시면 화면 호출할때마다 기상청 api를 호출하게 됩니다.

이렇게 하신다면 여러가지 방법이 있겠지만 저라면 navbar.html에서 특정 코드를 실행하여 HTML을 삽입할 수 있는 다음의 방법을 사용할것 같습니다.

박응용

2021년 9월 1일 8:36 오전

말씀대로 화면 호출시마다 api를 호출해서 매 화면 전환에 짧은 로딩이 걸리는걸 확인했습니다. 해결방안으로 말씀해주신 문서 확인해본 결과 커스텀 템플릿태그를 이용하는 것으로 이해 했습니다. 그런데 navbar.html은 어느 앱에서나 통용되는 html인데 커스텀 템플릿태그를 만드려면 setting.py에 속한 앱에 작성하라고 되어 있는데 만약 앱을 게시판 뿐만 아니라 여러개를 활용할 경우는 어떻게 처리하는지 알 수 있을까요. - hhgg님, 2021년 9월 1일 10:06 오후 추천 , 대댓글
@hhgg님 추가 질문 입니다. 커스텀 탬플릿태그를 게시판앱에 추가하여 사용결과 navbar.html을 통해 잘 표시되는것을 확인했습니다. 다만 이렇게 작성할 시 날씨 정보의 갱신에 관해 질문이 생깁니다. 커스텀 템플릿태그는 api를 항상 호출하지 않아서 딜레이가 안생기는것 같은데 이럴 경우 장기간 접속 유지시 api의 갱신이 안이루어져 날씨의 변화를 알 수 없을것 같은데 이럴 경우 해결은 어떻게 이루어 지는지 알 수 있을까요? 질문이 많아서 죄송합니다 ㅠㅠ - hhgg님, 2021년 9월 1일 10:35 오후 추천 , 대댓글
+1 @hhgg님 커스텀 태그를 사용하더라도 화면 호출시마다 api가 호출될텐데요? - 박응용님, 2021년 9월 1일 10:44 오후 추천 , 대댓글
@박응용님 아 그런가요? template context-processors와 커스텀 템플릿태그 로딩시간이 차이가 많던데 이유가 뭔지 알수 있을까요ㅠ? - hhgg님, 2021년 9월 1일 10:48 오후 추천 , 대댓글