Spec-Zone.ru › CakePHP 3.3

Класс RulesChecker

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

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

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

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

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

Выполнение проверок

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

Прямые подклассы

  • Cake\ORM\RulesChecker
Пространство имен: Cake\Datasource
Расположение: Datasource/RulesChecker.php

Краткое описание констант

  • string

    CREATE
    'create'
  • string

    DELETE
    'delete'
  • string

    UPDATE
    'update'

Краткое описание свойств

  • $_createRules protected
    array
    Список правил для проверки при создании
  • $_deleteRules protected
    array
    Список правил для проверки при удалении
  • $_options protected
    array
    Список параметров для передачи каждому вызываемому правилу
  • $_rules protected
    array
    Список правил, которые проверяются как при создании, так и при обновлении
  • $_updateRules protected
    array
    Список правил для проверки при обновлении
  • $_useI18n protected
    boolean
    Использовать ли функции 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()source public

__construct( array $options [] )

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

Параметры

массив $options необязательно []
Параметры для передачи каждому правилу

_addError()source protected

_addError( callable $rule , string $name , array $options )

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

Параметры

вызываемый объект $rule
Правило для декорирования
строка $name
Псевдоним правила.
массив $options
Параметры, содержащие сообщение об ошибке и поле.

Возвращает

вызываемый объект

_checkRules()source protected

_checkRules( Cake\Datasource\EntityInterface $entity , array $options [] , array $rules [] )

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

Параметры

Cake\Datasource\EntityInterface $entity
Сущность, которая проверяется на валидность.
массив $options необязательно []
Дополнительные параметры для передачи функциям проверяющего объекта.
массив $rules необязательно []
Список правил, которые необходимо проверить.

Возвращает

boolean

add()source public

add( callable $rule , string|null $name null , array $options [] )

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

Параметры

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

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

Параметры

вызываемый объект $rule

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

строка|null $name необязательно null
Псевдоним правила.
массив $options необязательно []

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

Возвращает


$this

addCreate()source public

addCreate( callable $rule , string|null $name null , array $options [] )

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

Параметры

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

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

Параметры

вызываемый объект $rule

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

строка|null $name необязательно null
Псевдоним правила.
массив $options необязательно []

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

Возвращает


$this
END_OF_DOCUMENT_MARKER

addDelete()source public

addDelete( callable $rule , string|null $name null , array $options [] )

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

Параметры

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

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

Параметры

callable $rule

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

string|null $name необязательно null
Псевдоним правила.
array $options необязательно []

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

Возвращает


$this

addUpdate()source public

addUpdate( callable $rule , string|null $name null , array $options [] )

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

Параметры

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

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

Параметры

callable $rule

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

string|null $name необязательно null
Псевдоним правила.
array $options необязательно []

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

Возвращает


$this

check()source public

check( Cake\Datasource\EntityInterface $entity , string $mode , array $options [] )

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

Параметры

Cake\Datasource\EntityInterface $entity
Сущность, для которой проверяется корректность.
string $mode
Либо 'create', 'update', или 'delete'.
array $options необязательно []
Дополнительные параметры, передаваемые функциям проверки.

Возвращает

boolean

Исключения

InvalidArgumentException
если передан недопустимый режим.

checkCreate()source public

checkCreate( Cake\Datasource\EntityInterface $entity , array $options [] )

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

Параметры

Cake\Datasource\EntityInterface $entity
Сущность, для проверки корректности.
array $options необязательно []
Дополнительные параметры, передаваемые функциям проверки.

Возвращает

boolean

checkDelete()source public

checkDelete( Cake\Datasource\EntityInterface $entity , array $options [] )

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

Параметры

Cake\Datasource\EntityInterface $entity
Сущность, для проверки корректности.
array $options необязательно []
Дополнительные параметры, передаваемые функциям проверки.

Возвращает

boolean

checkUpdate()source public

checkUpdate( Cake\Datasource\EntityInterface $entity , array $options [] )

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

Параметры

Cake\Datasource\EntityInterface $entity
Сущность, для проверки корректности.
array $options необязательно []
Дополнительные параметры, передаваемые функциям проверки.

Возвращает

boolean

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

$_createRulessource

protected array

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

[]

$_deleteRulessource

protected array

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

[]

$_optionssource

protected array

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

[]

$_rulessource

protected array

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

[]

$_updateRulessource

protected array

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

[]

$_useI18nsource

protected boolean

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

false

© 2005–2017 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/3.3/class-Cake.Datasource.RulesChecker.html

Spec-Zone.ru

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