2011-12-20 6 views
1

J'ai utilisé django pendant un moment et je suis en train de convertir en jinja2 parce que GAE m'a dit aussi. L'un des raccourcis que j'utilise pour django est de passer "self" à django lors du rendu de mon template de sorte que dans mon template j'appelle {{self.stuff}}. En jinja, il semble que "soi" représente quelque chose. Est-ce que cela m'oblige à changer tous mes modèles pour utiliser peut-être "ceci"?jinja2 ne peut pas lire soi-même

+0

Pouvez-vous nous montrer un exemple? –

+2

'self' en général n'est pas un mot correct à utiliser dans votre situation, alors changez-le en' name-of-obj' ou en 'obj'. – Ski

Répondre

2

self est en fait utilisé par Jinja2 pour vous permettre de faire référence à des blocs:

<!-- 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> 

utilisent simplement un autre nom et tout fonctionne (à savoir, plutôt que l'utilisation selfthis ou obj comme suggéré par @Skirmantas).

+0

Merci pour l'aide – rp90