jinja2 не может читать себя - PullRequest
       16

jinja2 не может читать себя

1 голос
/ 21 декабря 2011

Я уже некоторое время пользуюсь django, и теперь я перехожу на jinja2, потому что GAE тоже сказал мне. Одним из коротких путей, которые я использую для django, является передача «self» django при рендеринге моего шаблона, чтобы в моем шаблоне я вызывал {{self.stuff}}. В дзиндзя кажется, что «я» представляет что-то. Требует ли это, чтобы я изменил все мои шаблоны, чтобы использовать, возможно, «это»?

1 Ответ

2 голосов
/ 22 декабря 2011

self фактически используется Jinja2, чтобы позволить вам ссылаться на блоки:

<!-- In your layout.html file -->
<title>{%- block title %}{% endblock %}</title>
<!-- Some distance further down ... -->
<h1>{{self.title()}}</h1>

<!-- In a file that extends layout.html -->
{% block title %}The Title of the Page{% endblock %}

<!-- The above will render -->
<title>The Title of the Page</title>
<!-- Some other stuff ... -->
<h1>The Title of the Page</h1>

Просто используйте другое имя, и все будет работать (т. Е. Вместо self используйте this или obj как предложено @Skirmantas).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...