Spec-Zone.ru › Symfony 3.0

ПоследовательностьГрупп

класс ПоследовательностьГрупп

Последовательность групп валидации.

При валидации последовательности групп каждая группа будет валидироваться только в случае успешной валидации всех предыдущих групп в последовательности. Например:

$validator->validate($address, null, new GroupSequence('Basic', 'Strict'));

На первом шаге будут валидироваться все ограничения, относящиеся к группе «Basic». Если ни одно из ограничений не завершится ошибкой, валидатор проверит ограничения в группе «Strict». Это полезно, например, если «Strict» содержит дорогостоящие проверки, требующие большого количества ЦП или медленных внешних служб. Обычно вы не хотите выполнять дорогостоящие проверки, если какие-либо из недорогих проверок завершатся ошибкой.

При добавлении метаданных к классу вы можете переопределить группу «Default» этого класса с помощью последовательности групп:

/**
 * @GroupSequence({"Address", "Strict"})
 *\/
class Address
{
    // ...
}

Всякий раз, когда вы валидируете этот объект в группе «Default», будет выполнена валидация последовательности групп:

$validator->validate($address);

Если вы хотите выполнить ограничения группы «Default» для класса с переопределённой группой по умолчанию, передайте имя класса как имя группы вместо этого:

$validator->validate($address, null, "Address")

Свойства

массив строк|ПоследовательностьГрупп[] $groups Группы в последовательности.
строка|ПоследовательностьГрупп $cascadedGroup Группа, в которой валидируются связанных объекты при валидации этой последовательности.

Методы

__construct(массив $groups)

Создаёт новую последовательность групп.

Подробности

__construct(массив $groups)

Создаёт новую последовательность групп.

Параметры

массив $groups Группы в последовательности

© 2004–2017 Fabien Potencier
Licensed under the MIT License.
http://api.symfony.com/3.0/Symfony/Component/Validator/Constraints/GroupSequence.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API