2

장고 템플릿 대신 콧수염이나 핸들 바와 같은보다 일반적인 템플릿 엔진으로 변환 할 가치가 있는지 궁금합니다. 나는 나 자신을 위해 볼 수있는 옵션은 다음과 같습니다 일부 사용뿐만 아니라 콧수염/핸들 바 : 장고 템플릿 (전용 서버 측)와클라이언트 측 대 서버 측 대 django 백엔드 용 하이브리드 템플리트

  1. 스테이는
  2. 이 콧수염/핸들 바 또는
  3. 사용에 완전히 하이브리드 approcah 변환 장고 템플릿 해당되는 경우 (추한 옵션?) 시스템과 같은 콧수염/핸들 바로 변환 서버 측뿐만 아니라 나에게 클라이언트에서 동일한 템플릿을 사용하여 유연성을 구입하지만

, 나는 장고가 제공하는 특정 장점을 잃지 않는다 템플릿 시스템 (예 : 템플릿 상속).

저는 클라이언트 사이드 템플리트와 서버 사이드 템플리트에 대해 열렬한 논쟁이 있음을 알고 있습니다. 바쁜 서버에서 HTML을 렌더링하면 속도가 느려질 수 있다고 주장하는 사람들이 있지만 브라우저의 JSON에서 HTML을 렌더링하면 클라이언트가 느려질 수 있다고 주장하는 사람들이 있습니다.

자바 스크립트를 지원하지 않는 장치에 서버 측 HTML 렌더링을 사용하는 것에 대한 논점도 알고 있지만 요즘 대부분의 장치는 자바 스크립트를 지원합니다.

Django 템플릿 시스템에서 콧수염/핸들 모음 등으로 변환하는 실제적이고 분명한 이유가 있습니까?

감사합니다.

답변

3

귀하의 질문에 실제로 구체적인 답변이 없습니다. 제 생각에는 Mustache 스타일의 클라이언트 측 템플릿을 사용하는 것이 서버 측 템플릿을 선호하는 것보다 훨씬 중요합니다. 콧수염 스타일의 클라이언트 측 템플릿은 이식성, 확장 성, 다른 개발자가 쉽게 이해할 수 있으며 모든 브라우저 (IE6 포함)에서 작동합니다. 웹 애플리케이션이 크게 성장할 계획이라면 페이지 생성이 사용자 브라우저로 오프로드되고 서버 측에서 처리되지 않을 때 줄을내어 감사하게 생각할 것입니다.

Django에서 제공하는 템플릿 상속은 과장되어 있습니다. Mustache 템플릿과 약간의 JavaScript로 동일한 작업을 수행 할 수 있습니다. 광범위한 모든 포괄적 인 템플릿을 만들지 마십시오. 템플릿을 작고 재사용 가능한 빌딩 블록으로 만들고 자바 스크립트와 함께 만들어 웹 애플리케이션을 구성하는 구성 요소를 구성하십시오.

물론 클라이언트에서 모든 것을 렌더링 할 때 검색 엔진 최적화 (SEO)가 성공하지만 이는 애플리케이션에 문제가 될 수도 있고 아닐 수도 있습니다.

+0

감사합니다. 더 생각한 후에 정적 콘텐츠에 대해서는 서버 쪽 템플릿을 사용하는 것이 좋으며 페이지의 업데이트와 같은 동적 인 경우에는 클라이언트 템플릿을 사용하는 것이 좋습니다. 정적 인 페이지의 경우 서버에서 보내지는 매우 제한된 양의 HTML이 있지만 동적 인 콘텐츠의 경우 JSON을 보내는 경우에만 블로그에 대한 의견 모음과 같은 위젯 인스턴스가 많이있을 수 있습니다 HTML 대신 서버에서 대역폭/효율성 이점을 확실히 갖게됩니다. 생각? – Sid

+0

다음은 매우 도움이되는 기사입니다. http://ryanflorence.com/2012/client-v-server-templating/ –