@@ -145,6 +145,69 @@ Parameter Description
145
145
``{{ line }} `` The line where the YAML syntax error happened
146
146
=============== ==============================================================
147
147
148
+ ``configClass ``
149
+ ~~~~~~~~~~~
150
+
151
+ **type **: ``string `` **default **: ``null ``
152
+
153
+ This option enable a validation check using a class that implement
154
+ :class: `Symfony\C omponent\C onfig\D efinition\C onfigurationInterface `. You need to give it the full classname of your
155
+ configuration class.
156
+
157
+ .. configuration-block ::
158
+
159
+ .. code-block :: php-attributes
160
+
161
+ // src/Entity/Report.php
162
+ namespace App\Entity;
163
+
164
+ use App\Yaml\MyConfiguration;
165
+ use Symfony\Component\Validator\Constraints as Assert;
166
+
167
+ class Report
168
+ {
169
+ #[Assert\Yaml(
170
+ configClass: MyConfiguration::class,
171
+ )]
172
+ private string $customConfiguration;
173
+ }
174
+
175
+ .. code-block :: php
176
+
177
+ // src/Entity/Report.php
178
+ namespace App\Entity;
179
+
180
+ use App\Yaml\MyConfiguration;
181
+ use Symfony\Component\Validator\Constraints as Assert;
182
+ use Symfony\Component\Validator\Mapping\ClassMetadata;
183
+
184
+ class Report
185
+ {
186
+ public static function loadValidatorMetadata(ClassMetadata $metadata): void
187
+ {
188
+ $metadata->addPropertyConstraint('customConfiguration', new Assert\Yaml([
189
+ 'configClass' => MyConfiguration::class,
190
+ ]));
191
+ }
192
+ }
193
+
194
+ For more info about Configuration, see :doc: `Config component </components/config >`.
195
+
196
+ ``configMessage ``
197
+ ~~~~~~~~~~~
198
+
199
+ **type **: ``string `` **default **: ``This value do not match the required config. ``
200
+
201
+ This message shown if the given YAML value is invalid regarding the Configuration class.
202
+
203
+ You can use the following parameters in this message:
204
+
205
+ =============== ==============================================================
206
+ Parameter Description
207
+ =============== ==============================================================
208
+ ``{{ error }} `` The full error message from the config Processor
209
+ =============== ==============================================================
210
+
148
211
.. include :: /reference/constraints/_groups-option.rst.inc
149
212
150
213
.. include :: /reference/constraints/_payload-option.rst.inc
0 commit comments