forked from nette/docs
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathconfiguration.texy
154 lines (97 loc) · 5.26 KB
/
configuration.texy
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
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
Configuration de l'application
******************************
.[perex]
Aperçu des options de configuration de l'application Nette.
Application .[#toc-application]
===============================
```neon
application:
# affiche le panneau "Nette Application" dans Tracy BlueScreen ?
debugger: ... # (bool) par défaut à true
# le présentateur d'erreur sera-t-il appelé en cas d'erreur ?
catchExceptions: ... # (bool) vaut true par défaut en mode production
# nom du présentateur d'erreur
errorPresenter: Error # (string) vaut par défaut 'Nette:Error'.
# définit les règles pour résoudre le nom du présentateur vers une classe
mapping: ...
# les mauvais liens génèrent-ils des avertissements ?
# n'a d'effet qu'en mode développeur
silentLinks: ... # (bool) valeur par défaut: false
```
Comme les présentateurs d'erreurs ne sont pas appelés par défaut en mode développement et que les erreurs sont affichées par Tracy, le fait de changer la valeur `catchExceptions` en `true` permet de vérifier que les présentateurs d'erreurs fonctionnent correctement pendant le développement.
L'option `silentLinks` détermine comment Nette se comporte en mode développeur lorsque la génération de liens échoue (par exemple, parce qu'il n'y a pas de présentateur, etc). La valeur par défaut `false` signifie que Nette déclenche `E_USER_WARNING`. Le réglage sur `true` supprime ce message d'erreur. Dans un environnement de production, `E_USER_WARNING` est toujours invoqué. Nous pouvons également influencer ce comportement en définissant la variable du présentateur [$invalidLinkMode |creating-links#Invalid Links].
Le [mappage définit les règles |modules#mapping] selon lesquelles le nom de la classe est dérivé du nom du présentateur.
Enregistrement automatique des présentateurs .[#toc-automatic-registration-of-presenters]
-----------------------------------------------------------------------------------------
Nette ajoute automatiquement les présentateurs en tant que services au conteneur DI, ce qui accélère considérablement leur création. La manière dont Nette découvre les diffuseurs peut être configurée :
```neon
application:
# rechercher les diffuseurs dans la carte des classes Composer ?
scanComposer: ... # (bool) valeur par défaut: true
# un masque qui doit correspondre à la classe et au nom du fichier
scanFilter: ... # (string) Valeur par défaut: '*Presenter'.
# dans quels répertoires chercher les diffuseurs ?
scanDirs: # (string[]|false) Valeur par défaut: '%appDir%'.
- %vendorDir%/mymodule
```
Les répertoires listés dans `scanDirs` ne remplacent pas la valeur par défaut `%appDir%`, mais la complètent, ainsi `scanDirs` contiendra les chemins `%appDir%` et `%vendorDir%/mymodule`. Si nous voulons remplacer le répertoire par défaut, nous utilisons le [point d'exclamation |dependency-injection:configuration#Merging]:
```neon
application:
scanDirs!:
- %vendorDir%/mymodule
```
L'analyse des répertoires peut être désactivée en définissant false. Nous ne recommandons pas de supprimer complètement l'ajout automatique de diffuseurs, sinon les performances de l'application seront réduites.
Latte .[#toc-latte]
===================
Ce paramètre affecte globalement le comportement de Latte dans les composants et les présentateurs.
```neon
latte:
# affiche le panneau Latte dans la barre Tracy pour le modèle principal (true) ou pour tous les composants (all) ?
debugger: ... # (true|false|'all') vaut true par défaut
# génère des modèles avec declare(strict_types=1)
strictTypes: ... # (bool) vaut false par défaut
# classe de $this->template
templateClass: App\MyTemplateClass # Valeur par défaut: Nette\Bridges\ApplicationLatte\DefaultTemplate
```
Si vous utilisez la version 3 de Latte, vous pouvez ajouter une nouvelle [extension |latte:creating-extension] en utilisant :
```neon
latte:
extensions:
- Latte\Essential\TranslatorExtension
```
/--comment
\--
Routage .[#toc-routing]
=======================
Paramètres de base :
```neon
routage:
# affiche le panneau de routage dans Tracy Bar ?
debugger: ... # (bool) par défaut à true
# pour sérialiser le routeur dans le conteneur DI ?
cache: ... # (bool) par défaut à false
```
Le routeur est généralement défini dans la classe [RouterFactory |routing#Route Collection]. Il est également possible de définir les routeurs dans la configuration en utilisant les paires `mask: action`, mais cette méthode n'offre pas une aussi grande variation des paramètres :
```neon
routing:
routes:
'detail/<id>': Admin:Home:default
'<presenter>/<action>': Front:Home:default
```
Constantes .[#toc-constants]
============================
Création de constantes PHP.
```neon
constants:
Foobar: 'baz'
```
La constante `Foobar` sera créée après le démarrage.
.[note]
Les constantes ne doivent pas servir de variables disponibles dans le monde entier. Pour transmettre des valeurs aux objets, utilisez l'[injection de dépendances |dependency-injection:passing-dependencies].
PHP
===
Vous pouvez définir des directives PHP. Un aperçu de toutes les directives peut être trouvé sur [php.net |https://www.php.net/manual/en/ini.list.php].
```neon
php:
date.timezone: Europe/Prague
```