면책 조항 : 이것은 my previous question의 질문 사항입니다.django의 템플릿 태그 내에서 템플릿의 렌더링 된 출력을 얻으려면 어떻게해야합니까?
Django에 템플릿 태그를 작성하려고하는데, Mako 템플릿의 본문 내에서 렌더링됩니다. 이것이 성취 할 수 있을지 확신 할 수는 없지만 내 프로젝트와 Django 내에서 Mako Templates를 사용하는 많은 사람들에게 매우 유용 할 것입니다. 파서 객체가이 시점까지 전체 트리를 렌더링 할 수있는
def extends_mako(parser, token):
# wishlist below, this code does not work but it's what I want to achieve
template_html = ''
while (node = parser.nodelist.pop()):
template_html += node.render()
가 : 여기
내 태그의 정의는? 내 유일한 생각은 파서 개체를 사용하여이 노드 앞에있는 모든 노드를 렌더링 (및 트리에서 제거)하는 것입니다. 그런 다음 Mako에 출력을 전달하여 HTML로 렌더링 한 다음이를 정의하는 노드의 렌더링 함수에 출력으로 사용합니다. 내 희망은, 템플릿에서 render가 호출 될 때 템플릿 태그는 이미 다른 모든 것들에 대한 편집을 완료 했으므로이 노드를 렌더링하면됩니다. 의도는 트리의 마지막 태그로 extends_mako 태그를 갖는 것입니다.빠른 pdb.set_trace 조사를 해봤지만 지금까지는 도움이되는 내용을 볼 수 없습니다.
그래서; 템플릿 태그에 전달 된 파서 개체를 사용하여 템플릿을 컴파일하고 최종 렌더링 된 출력을 검색 할 수 있습니까?
삭제 Mako 태그가 포함 된 편집. 이 질문에 대한 대답은 마코를 포함하지 않습니다. django 템플릿 태그를 사용하여 현재 장고 템플릿의 총 출력을 렌더링하는 방법은 명시 적입니다. –