8000 Find fix for Collection and All validador · symfony/symfony@c1311b8 · GitHub
[go: up one dir, main page]

Skip to content

Commit c1311b8

Browse files
author
Benjamin Lazarecki
committed
Find fix for Collection and All validador
1 parent 4850301 commit c1311b8

File tree

3 files changed

+10
-2
lines changed

3 files changed

+10
-2
lines changed

src/Symfony/Component/Validator/Constraints/AllValidator.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ public function validate($value, Constraint $constraint)
4949
} else {
5050
// 2.4 API
5151
foreach ($value as $key => $element) {
52-
$context->validateValue($element, $constraint->constraints, '['.$key.']');
52+
$context->validateValue($element, $constraint->constraints, '['.$key.']', $context->getGroup());
5353
}
5454
}
5555
}

src/Symfony/Component/Validator/Constraints/CollectionValidator.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ public function validate($value, Constraint $constraint)
6363
->validate($value[$field], $fieldConstraint->constraints, $fieldConstraint->groups);
6464
} else {
6565
// 2.4 API
66-
$context->validateValue($value[$field], $fieldConstraint->constraints, '['.$field.']');
66+
$context->validateValue($value[$field], $fieldConstraint->constraints, '['.$field.']', $context->getGroup());
6767
}
6868
}
6969
} elseif (!$fieldConstraint instanceof Optional && !$constraint->allowMissingFields) {

src/Symfony/Component/Validator/ExecutionContext.php

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -271,7 +271,15 @@ public function getMetadataFactory()
271271
*/
272272
private function executeConstraintValidators($value, array $constraints)
273273
{
274+
// Filter constraints with the context group.
275+
$filteredConstraints = array();
274276
foreach ($constraints as $constraint) {
277+
if (in_array($this->getGroup(), $constraint->groups)) {
278+
$filteredConstraints[] = $constraint;
279+
}
280+
}
281+
282+
foreach ($filteredConstraints as $constraint) {
275283
$validator = $this->globalContext->getValidatorFactory()->getInstance($constraint);
276284
$validator->initialize($this);
277285
$validator->validate($value, $constraint);

0 commit comments

Comments
 (0)
0