Spec-Zone.ru › Symfony 3.4

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

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

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

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

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

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

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

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

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

$validator->validate($address);

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

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

Свойства

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

Методы

__construct(array $groups)

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

Подробности

__construct(array $groups)

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

Параметры

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

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

Spec-Zone.ru

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