Tutos Django

Tag : template

Tag et Filtres personnalisés

Bien que Django vous fournisse un grand nombre de tags et de filtres par défaut : Built-in template tags and filters, il vous est possible de créer les vôtres.

Pour rendre cela possible, il va d'abord nous falloir créer un répertoire nommé 'templatetags' dans le dossier de notre application. Ce répertoire sera donc au même niveau que les fichiers models.py et views.py. De plus, il faudra rendre ce répertoire atteignable par django et donc créer un fichier __init__.py vide.
Si votre application s'appelle my_app, vous obtenez une arborescence de ce genre :

my_app/
    models.py
    templatetags/
        __init__ ...
Continuer la lecture →

Django shortcuts - Raccourcis

Vous avez pu remarquer au cours des derniers tutoriaux que nous avons utilisé différentes façons de retourner de la donnée depuis notre contrôleur vers nos vues.
Par exemple dans le tutoriel sur les formulaires, nous avons utilisé le raccourci 'render_to_response' dans le contrôleur 'views.py' mais nous aurions pu utiliser d'autres raccourcis.

Rappelons d'abord comment un contrôleur le plus simple qu'il soit peut s'écrire :

from django.http import HttpResponse

def index(request):
    return HttpResponse("Hello, world.")

Nous faisons appel à la méthode HttpResponse du module http pour ensuite retourner une chaîne de caractère. Et nous ne ...

Continuer la lecture →

L'encapsulation des Templates

Comme tout bon framework MVC, Django gère l'héritage des templates et met donc en avant le principe DRY (Don't Repeat Yourself).
Nous allons voir quels tags nous permettent de gérer correctement une application, sans avoir à réécrire incessamment du code.
Pour cela, nous allons créer une nouvelle application que nous appèlerons 'myapp'.
Placez-vous dans votre projet et exécutez la commande (pour créer un projet, reportez-vous à ce tutoriel) : 

$ python manage.py startapp myapp

Positionnez-vous dans le dossier 'myapp' ainsi produit, et créez un répertoire templates ainsi que les fichiers 'skeleton.html', 'index.html', 'about.html', 'header.html', 'footer ...

Continuer la lecture →

Le langage de Templates - tag et filtres

Vous  aurez remarqué que django utilise un langage spécifique pour travailler avec les templates. La documentation officielle sur le langage de templates django peut être trouvée ici : The Django template language. Vous pouvez également trouver une version non officielle traduite en français ici (attention cependant, cela date d'aout 2006).

Premièrement, vous avez du remarquer que nous avons souvent utilisé les caractères {{ ... }} pour afficher une variable.
C'est en effet ces caractères qui vont nous permettre d'accéder à une variable, et mieux, si celle-ci est un objet, nous allons pouvoir accéder à ses attributs à l'aide du caractère ...

Continuer la lecture →