Django 핵심기능 Template

김용녀·2022년 7월 29일
0

장고 Template은 프로젝트 파일인 settings의 Template[] 부분에 설정되어있다.

  • 템플릿 내부 처리 과정
    1.템플릿 설정에 따라 Engine객체를 생성한다.
    처음에 settings.py에 저장한 값들을 기반으로 객체를 생성한다.
    2.템플릿 파일 로딩 및 Template객체 생성
    Engine객체에 지정된 템플릿 로더(loader)는 하나 또는 여러개로 나뉜 템플릿 파일들을 찾고 그 내용, 템플릿 코드를 하나로 모아서 Template객체를 생성한다.
    3.렌더링 실시해 , 최종 HTML 파일 생성
    Template객체의 render() 메소드를 호출해 컨텍스트 데이터와 요청(request) 데이터들을 템플릿 코드에 대입하고 렌더링 결과로 html 파일을 만든다.
  • 제네릭 뷰의 디폴트 템플릿
    디폴트 템플릿명은 tepmlate_name을 지정하지 않는 경우 템플릿 파일 이름을 말한다.

    모델명_suffix값.html로 보면된다.

  • {% include %} 태그
    장고에서 공통으로 사용하는 템플릿 파일을 만들어둔 뒤, include태그로 가져와 사용하는 방식이다. 다른 템플릿파일을 현재 템플릿파일에서 더 사용하기 위한 용도로 쓰인다. ex) {% include "foo/bar.html" %}
    여기에 단순히 템플릿 명으로 include할뿐만 아니라, 템플릿 내에 컨텍스트 변수 명으로도 부를수 있다.

  • {% static %} 태그
    장고에서 정적파일을 이용할때 쓰인다.뿐만아니라 컨텍스트 변수로도 사용할수 있다.

    URL을 템플릿 변수에 저장할수도있다.

- load static과 load staticfiles 의 차이
두개의 차이점은 크게 없지만 대게 load static을 사용한다고 생각하자 . 자세한건 링크를 참조하세요

profile
어서오세요

0개의 댓글