summaryrefslogtreecommitdiff
path: root/docs/fr/source/annexe-tech-4-jinja-filters.rst
blob: 346feeab8f451da2ed65ccd186eac1c44b541089 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
.. -*- coding: utf-8 -*-

.. _annexe-technique-4-jinja-filters:

==========================================================
Annexe technique 4 - Filtres pour les patrons de documents
==========================================================

:Auteurs: Étienne Loks, Ishtar team
:Date: 2021-01-08
:Copyright: CC-BY 3.0
:Ishtar Version: v3.1.0

----------------------------------


Les patrons de documents permettent d'utiliser des filtres sur les données de la base de données. Cela permet essentiellement de mettre en forme les champs . Certains de ces filtres sont directement disponibles via la bibliothèque utilisée dans Ishtar, d'autres ont été développés au sein d'Ishtar.

Pour utiliser un filtre, à la suite de la variable, il faut utiliser le
caractère `|`, par exemple : `{{variable|capfirst}}`.

.. note:: Les filtres peuvent se chaîner. On peut donc écrire : `{{variable|human_date|capitalize}}.`

Pour les différents exemples nous utilisons directement une chaîne de caractères pour illuster, en utilisation réelle on utilise un nom de variable.
Les différents filtres disponibles sont :

- **capfirt**

Ce filtre met la première lettre en majuscule et ne touche pas au reste de la
chaîne.

  - `{{"saint georges d'oléron"|capfisrt}}` -> `Saint georges d'oléron`


- **lowerfirst**

Ce filtre met la première lettre en minuscule et ne touche pas au reste de la
chaîne

  - `{{"SAINT-GEORGES D'OLÉRON"|lowerfirst}}` -> `sAINT GEORGES D'OLÉRON`


- **capitalize**

Ce filtre met la première lettre de chaque mot en majuscule et le reste de la
chaîne en minuscule.

  - `{{"SAINT-GEORGES D'OLÉRON"|capitalize}}` -> `Saint-Georges d'Oléron`


- **human_date**

Ce filtre permet d'afficher une date en toutes lettres.

  - `{{"2020-01-01"|human_date}}` -> `1 janvier 2020`


- **splitpart**

Ce filtre permet d'extraire un élément depuis une chaîne de
caractères en prenant en compte un séparateur. Par exemple depuis la chaîne
`2,3,10`, accéder au troisième élément : `10`. Ce filtre nécessite au minimum
un argument : le numéro de l'élément souhaité (en commençant le compte à 0).
Par défaut le séparateur `,` est utilisé si l'on souhaite un autre
séparateur, on spécifie celui-ci en second argument.

  - `{{"9,2,10"|splitpart(1)}}` -> `2`
  - `{{"chaise;bureau;papier;paragraphe"|splitpart(0, ";")}}` -> `chaise`