Я использую django какое-то время, и теперь я перехожу к jinja2, потому что GAE мне тоже сказал. Одним из сокращений, которые я использую для django, является передача «self» в django при рендеринге моего шаблона, чтобы в моем шаблоне я вызывал {{self.stuff}}. В джиня кажется, что «я» представляет что-то. Требуется ли мне изменить все мои шаблоны, чтобы использовать, возможно, «это»?jinja2 не может читать самостоятельно
1
A
ответ
2
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).
+0
Спасибо за помощь – rp90
Можете ли вы показать нам пример? –
'self' в целом не является правильным словом для использования в вашей ситуации, поэтому обязательно измените его на' имя-obj' или просто 'obj'. – Ski