2013-01-03 1 views
0

내부 정적 HTML 페이지를 렌더링 아파치 - 모 WSGI내가 을 사용하여 웹 포털을 개발하고 있어요 내 기본 장고 템플릿

나는 아파치에 의해 제공되는 여러 HTML 파일을했습니다.

머리글/바닥 글 및 동적 메뉴를 그대로 유지하려면 기본 서식 파일 아래에 정적 HTML 페이지를 렌더링하고 싶습니다.

한 가지 방법은 iframe을 사용하는 것으로 생각할 수 있습니다. 또 다른 방법은 렌더링하는 동안 HTML 파일을 읽고 문자열을 반환하는 것입니다.하지만이 경우에는 아파치의 이점을 잃어 버리는 것입니다. 그래서 더 좋은 방법이 있을지 알고 싶습니다. 거기에 장고 도구가 제공하는 기존 솔루션이 있습니까? ? 이것은 당신을 요구하고 있지만 사용자의 요구에 따라 ssiinclude 태그 템플릿에서 HTML 파일 (또는 다른 템플릿을) 삽입 할 수 있습니다 정확히 어떤 경우

답변

6

는 잘 모르겠어요 :

{% ssi '/path/to/file.html' %} 
{% include 'relative/path/to/template.html' %} 
0

네, 그것은 include tag

템플릿을로드하고 현재 컨텍스트와 렌더링입니다. 이것은 템플릿 내에 다른 템플릿을 "포함"하는 방법입니다.

는 그것의 간단

{% include "templates/static_template_1.html" %} 

또는

와 같이 뷰 측면에서 변수 작성하는 경우 :

{% include template_name_variable %} 

그것이 기본 템플릿 컨텍스트 (이를 포함하여 하나를) 공유를

+1

{% include %}은 (는) 다른 템플릿을 삽입하기위한 것입니다. shahjapan는 정적 파일을 삽입하려고합니다. 파일을 삽입하기 전에 파일을 구문 분석하지 않으므로 {% ssi %}가 더 좋습니다. –

+0

내가 "HTML 템플릿"을 읽은 이유는 아마도 지난 시간 이후 100 % 정적 파일을 사용했기 때문일 것입니다. 네, 그렇다면 SSI가 더 좋습니다! @shahjapan 당신이 템플릿이 아닌 파일과 정적이 아닌 템플릿을 사용해야 할 경우를 대비하여 참고 용으로 내 대답을 지키십시오! –

1

편집 :

아마도 템플릿 시스템 외부에서 html 파일을로드 할 것을 권고합니다. 그러면 내 길은 충분하지 않을거야.

옵션은 기본 템플릿을 확장하는 것입니다.

기본 템플릿은 논리적으로 잘못된 하위 템플릿을 인식하면 안됩니다.

예 :

base_template.html :

<html> 
<div id='header'></div> 
{% block content %} 
    This text can be left out else it it will shown when nothing is loaded here 
{% endblock %} 

sub_template.html : 당신은 더 많은 읽을 수 있습니다 여기에

{% extends "base_template.html" %} 

{% block content %} 
    <h1>This is my subpage</h1> 
{% endblock %} 

:

https://docs.djangoproject.com/en/1.2/topics/templates/

관련 문제