rougail/doc/family/simple.md

128 lines
2.4 KiB
Markdown

# Une famille
Une famille est un conteneur de variables. Elle peut contenir également des familles.
Pour décrire une famille il faut mettre au minimum un nom :
```xml
<family name="my_family"/>
```
En YAML :
```yml
- family:
name: my_family
```
Cette famille doit être placé dans une balise [variables](../variables.md) :
```xml
<variables>
<family name="my_family"/>
</variables>
```
En YAML :
```yml
variables:
- family:
name: my_family
```
Ou dans une autre famille :
```xml
<variables>
<family name="my_family">
<family name="second_family"/>
</family>
</variables>
```
En YAML :
```yml
variables:
- family:
name: my_family
variables:
- family:
name: second_family
```
Attention, une famille vide sera automatiquement supprimée.
## Description et aide de la famille
En plus d'un nom, il est possible de mettre une "description" à la famille. C'est une information "utilisateur" qui nous permettra d'avoir des informations complémentaires sur le contenu de cette famille :
```xml
<family name="my_family" description="This is a great family"/>
```
En YAML :
```yml
variables:
- family:
name: my_family
description: 'This is a great family'
```
En plus de la description, il est possible de préciser une aide complémentaire :
```xml
<family name="my_family" help="This is a great family"/>
```
En YAML :
```yml
variables:
- family:
name: my_family
help: 'This is a great family'
```
## Mode de la famille
Le [mode](../mode.md) par défaut d'une famille correspond au [mode](../mode.md) du mode le plus petit entre la famille parente, les variables enfants ou des familles enfants qui sont contenu dans cette famille.
Changer le [mode](../mode.md) d'une famille permet de définir le [mode](../mode.md) par défaut des variables ou des familles inclusent dans cette famille.
Pour définir le [mode](../mode.md) :
```xml
<family name="my_family" mode="expert"/>
```
En YAML :
```yml
- family:
name: my_family
mode: expert
```
## Famille invisible
Il est possible de cacher une famille, ainsi que toutes les variables et des familles inclusent dans cette famille.
Cacher une famille signifie qu'elle ne sera pas visible lorsqu'on modifie la configuration du service.
Par contre ces variables sont accessibles lorsqu'on va utiliser ces variables.
Pour cacher une famille :
```xml
<family name="my_family" hidden="True"/>
```
En YAML :
```yml
- family:
name: my_family
hidden: true
```