저는 Jinja를 처음 접하고 그것이 필요한 것을 할 수 있을지 평가하려고 노력하고 있습니다.Jinja로 템플릿 블록 재귀
각 요소에 키/값 쌍 사전이 포함 된 요소 목록이 있다고 가정 해보십시오. Jinja가 목록의 각 요소에 대해 블록을 반복하고 블록 내용을 사용하여 각 사전의 키/값 쌍을 인쇄합니다.
(실제 구현은 재귀를 사용하기 때문에 반복문을 말합니다. 반복과 마찬가지로 개념이 같기 때문에 여기서는 간단히 사용합니다).
block.html :
{% extends base.html %}
{% block element %}
<do some fancy printing with the current dictionary here>
{% endblock %}
base.html :
{% for item in seq %}
<li>{% block element %}{% endblock %}</li>
{% endfor %}
그래서,이에 나의 순진 시도 (이 다소 의사입니다)이 같은 것
.py 파일 (GoogleAppEngine Jinja 구현을 기반으로 함) :
myDict = { 'seq': [{'keyA0': 'valueA0', 'keyA1': 'valueA1'},
{'keyB0': 'valueB0', 'keyB1': 'valueB1'}] }
template = JINJA_ENVIRONMENT.get_template('block.html')
self.response.write(template.render(myDict))
나는 이것을 원하는 방식으로 구성하는 방법을 잘 모르겠습니다.
Entry0:
keyA0: valueA0
keyA1: valueA1
Entry1:
keyB0: valueB0
keyB1: valueB1
하지만 각각은 필요한 데이터를 차단 전달하는 방법을 잘 모르겠어요 : 나는 블록의 '인스턴스'과 같은 출력 뭔가, 값을 인쇄하려면 목록에서 해당 사전을 갖고 싶어. 이게 진자와 가능한가?