Spec-Zone.ru › CakePHP 4.4

Класс RulesChecker

Содержит логику для хранения и проверки правил на сущностях

Классы RulesChecker используются классами Table для обеспечения соответствия текущего состояния сущности логике приложения и бизнес-правилам.

RulesChecker позволяют применять различные правила в сценариях создания и обновления.

Добавление правил

Правила должны быть вызываемыми объектами, возвращающими true/false в зависимости от того, выполнено ли правило. Вы можете использовать RulesChecker::add(), RulesChecker::addCreate(), RulesChecker::addUpdate() и RulesChecker::addDelete для добавления правил в проверку.

Запуск проверок

Обычно объект Table вызовет объекты правил, но вы можете вручную вызвать проверки, вызвав RulesChecker::checkCreate(), RulesChecker::checkUpdate() или RulesChecker::checkDelete().

Пространство имен: Cake\Datasource

Константы

  • string
    CREATE
    'create'

    Указывает, что правила проверки, которые нужно применить, — это правила, используемые для создания сущностей

  • string
    DELETE
    'delete'

    Указывает, что правила проверки, которые нужно применить, — это правила, используемые для удаления сущностей

  • string
    UPDATE
    'update'

    Указывает, что правила проверки, которые нужно применить, — это правила, используемые для обновления сущностей

Резюме свойств

  • $_createRules protected
    arrayCake\Datasource\RuleInvoker>

    Список правил, которые нужно проверить во время операций создания

  • $_deleteRules protected
    arrayCake\Datasource\RuleInvoker>

    Список правил, которые нужно проверить во время операций удаления

  • $_options protected
    array

    Список параметров для передачи каждому вызываемому правилу

  • $_rules protected
    arrayCake\Datasource\RuleInvoker>

    Список правил, которые должны проверяться при операциях создания и обновления

  • $_updateRules protected
    arrayCake\Datasource\RuleInvoker>

    Список правил, которые нужно проверить во время операций обновления

  • $_useI18n protected
    bool

    Использовать ли функции I18n для перевода стандартных сообщений об ошибках

Резюме методов

  • __construct() public

    Конструктор. Принимает параметры, которые нужно передавать всем правилам.

  • _addError() protected

    Вспомогательный метод для оформления любого вызываемого объекта таким образом, чтобы, если он вернул false, соответствующее свойство в сущности отмечалось как некорректное.

  • _checkRules() protected

    Используется в функциях верхнего уровня checkDelete, checkCreate и checkUpdate. Эта функция перебирает массив, содержащий правила, которые нужно проверить, и проверяет их все.

  • add() public

    Добавляет правило, которое будет применено к сущности как при создании, так и при обновлении.

  • addCreate() public

    Добавляет правило, которое будет применено к сущности при создании.

  • addDelete() public

    Добавляет правило, которое будет применено к сущности при удалении.

  • addUpdate() public

    Добавляет правило, которое будет применено к сущности при обновлении.

  • check() public

    Выполняет каждое из правил, передавая предоставленную сущность, и возвращает true, если все они пройдены. Применяемые правила зависят от параметра $mode, который может быть только RulesChecker::CREATE, RulesChecker::UPDATE или RulesChecker::DELETE

  • checkCreate() public

    Выполняет каждое из правил, передавая предоставленную сущность, и возвращает true, если все они пройдены. Выбранные правила будут только те, которые указаны для выполнения при 'создании'

  • checkDelete() public

    Выполняет каждое из правил, передавая предоставленную сущность, и возвращает true, если все они пройдены. Выбранные правила будут только те, которые указаны для выполнения при 'удалении'

  • checkUpdate() public

    Выполняет каждое из правил, передавая предоставленную сущность, и возвращает true, если все они пройдены. Выбранные правила будут только те, которые указаны для выполнения при 'обновлении'

Подробное описание методов

__construct() public

__construct(array<string, mixed> $options = [])

Конструктор. Принимает параметры, которые будут переданы всем правилам.

Параметры

array<string, mixed> $options optional

Параметры для передачи каждому правилу

_addError() protected

_addError(callableCake\Datasource\RuleInvoker $rule, array|string|null $name = null, array<string, mixed> $options = []): Cake\Datasource\RuleInvoker

Вспомогательный метод для декорирования любого вызываемого объекта, так что если он возвращает false, соответствующее свойство в сущности помечается как недействительное.

Параметры

callableCake\Datasource\RuleInvoker $rule

Правило для декорирования

array|string|null $name optional

Псевдоним для правила или массив параметров

array<string, mixed> $options optional

Параметры, содержащие сообщение об ошибке и поле.

Возвращает

Cake\Datasource\RuleInvoker

_checkRules() protected

_checkRules(Cake\Datasource\EntityInterface $entity, array<string, mixed> $options = [], arrayCake\Datasource\RuleInvoker> $rules = []): bool

Используется функциями верхнего уровня checkDelete, checkCreate и checkUpdate, эта функция итерирует массив, содержащий правила, которые нужно проверить, и проверяет их все.

Параметры

Cake\Datasource\EntityInterface $entity

Сущность для проверки на валидность.

array<string, mixed> $options optional

Дополнительные параметры для передачи функциям проверки.

arrayCake\Datasource\RuleInvoker> $rules optional

Список правил, которые должны быть проверены.

Возвращает

bool

add() public

add(callable $rule, array|string|null $name = null, array<string, mixed> $options = []): $this

Добавляет правило, которое будет применено к сущности как при операциях создания, так и обновления.

Параметры

Массив параметров принимает следующие специальные ключи:

  • errorField: Имя поля сущности, которое будет помечено как недействительное, если правило не пройдено.
  • message: Сообщение об ошибке, которое будет установлено для errorField если правило не пройдено.

Параметры

callable $rule

Вызываемая функция или объект, которые будут возвращать, является ли сущность валидной или нет.

array|string|null $name optional

Псевдоним для правила или массив параметров.

array<string, mixed> $options optional

Список дополнительных параметров для передачи вызываемому правилу во втором аргументе.

Возвращает

$this

addCreate() public

addCreate(callable $rule, array|string|null $name = null, array<string, mixed> $options = []): $this

Добавляет правило, которое будет применено к сущности при операциях создания.

Параметры

Массив параметров принимает следующие специальные ключи:

  • errorField: Имя поля сущности, которое будет помечено как недействительное, если правило не пройдено.
  • message: Сообщение об ошибке, которое будет установлено для errorField если правило не пройдено.

Параметры

callable $rule

Вызываемая функция или объект, которые будут возвращать, является ли сущность валидной или нет.

array|string|null $name optional

Псевдоним для правила или массив параметров.

array<string, mixed> $options optional

Список дополнительных параметров для передачи вызываемому правилу во втором аргументе.

Возвращает

$this

addDelete() public

addDelete(callable $rule, array|string|null $name = null, array<string, mixed> $options = []): $this

Добавляет правило, которое будет применено к сущности при операциях удаления.

Параметры

Массив параметров принимает следующие специальные ключи:

  • errorField: Имя поля сущности, которое будет помечено как недействительное, если правило не пройдено.
  • message: Сообщение об ошибке, которое будет установлено для errorField если правило не пройдено.

Параметры

callable $rule

Вызываемая функция или объект, которые будут возвращать, является ли сущность валидной или нет.

array|string|null $name optional

Псевдоним для правила или массив параметров.

array<string, mixed> $options optional

Список дополнительных параметров для передачи вызываемому правилу во втором аргументе.

Возвращает

$this

addUpdate() public

addUpdate(callable $rule, array|string|null $name = null, array<string, mixed> $options = []): $this

Добавляет правило, которое будет применено к сущности при операциях обновления.

Параметры

Массив параметров принимает следующие специальные ключи:

  • errorField: Имя поля сущности, которое будет помечено как недействительное, если правило не пройдено.
  • message: Сообщение об ошибке, которое будет установлено для errorField если правило не пройдено.

Параметры

callable $rule

Вызываемая функция или объект, которые будут возвращать, является ли сущность валидной или нет.

array|string|null $name optional

Псевдоним для правила или массив параметров.

array<string, mixed> $options optional

Список дополнительных параметров для передачи вызываемому правилу во втором аргументе.

Возвращает

$this

check() public

check(Cake\Datasource\EntityInterface $entity, string $mode, array<string, mixed> $options = []): bool

Запускает каждое из правил, передавая предоставленную сущность и возвращая true, если все они пройдены. Правила, которые будут применены, зависят от параметра $mode, который может быть только RulesChecker::CREATE, RulesChecker::UPDATE или RulesChecker::DELETE

Параметры

Cake\Datasource\EntityInterface $entity

Сущность для проверки на валидность.

string $mode

Либо 'create', 'update' или 'delete'.

array<string, mixed> $options optional

Дополнительные параметры для передачи функциям проверки.

Возвращает

bool

Выбрасывает

InvalidArgumentException
если передан неверный режим.

checkCreate() public

checkCreate(Cake\Datasource\EntityInterface $entity, array<string, mixed> $options = []): bool

Запускает каждое из правил, передавая предоставленную сущность и возвращая true, если все они пройдены. Выбранные правила будут только теми, которые указаны для запуска при 'create'

Параметры

Cake\Datasource\EntityInterface $entity

Сущность для проверки на валидность.

array<string, mixed> $options optional

Дополнительные параметры для передачи функциям проверки.

Возвращает

bool

checkDelete() public

checkDelete(Cake\Datasource\EntityInterface $entity, array<string, mixed> $options = []): bool

Запускает каждое из правил, передавая предоставленную сущность и возвращая true, если все они пройдены. Выбранные правила будут только теми, которые указаны для запуска при 'delete'

Параметры

Cake\Datasource\EntityInterface $entity

Сущность для проверки на валидность.

array<string, mixed> $options optional

Дополнительные параметры для передачи функциям проверки.

Возвращает

bool

checkUpdate() public

checkUpdate(Cake\Datasource\EntityInterface $entity, array<string, mixed> $options = []): bool

Запускает каждое из правил, передавая предоставленную сущность и возвращая true, если все они пройдены. Выбранные правила будут только теми, которые указаны для запуска при 'update'

Параметры

Cake\Datasource\EntityInterface $entity

Сущность для проверки на валидность.

array<string, mixed> $options optional

Дополнительные параметры для передачи функциям проверки.

Возвращает

bool

Подробное описание свойств

$_createRules protected

Список правил для проверки при операциях создания

Тип

arrayCake\Datasource\RuleInvoker>

$_deleteRules protected

Список правил для проверки при операциях удаления

Тип

arrayCake\Datasource\RuleInvoker>

$_options protected

Список опций, передаваемых каждому вызываемому правилу

Тип

array

$_rules protected

Список правил, которые проверяются при операциях создания и обновления

Тип

arrayCake\Datasource\RuleInvoker>

$_updateRules protected

Список правил для проверки при операциях обновления

Тип

arrayCake\Datasource\RuleInvoker>

$_useI18n protected

Использовать ли функции I18n для перевода сообщений об ошибках по умолчанию

Тип

bool

© 2005–present The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/4.4/class-Cake.Datasource.RulesChecker.html

Spec-Zone.ru

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