Spec-Zone.ru › CakePHP 3.8

Класс RulesChecker

Проверяющий правила с поддержкой ORM.

Добавляет функции, связанные с ORM, в класс RulesChecker.

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

Унаследованные константы

  • CREATE, DELETE, UPDATE

Унаследованные свойства

  • _createRules, _deleteRules, _options, _rules, _updateRules, _useI18n

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

  • existsIn() public

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

  • isUnique() public

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

  • validCount() public
    Проверяет количество связанных записей.

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

existsIn()source public

existsIn( string|array $field , object|string $table , string|array|null $message = null )

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

Это полезно для обеспечения целостности ссылочных ключей.

Пример:

$rules->add($rules->existsIn('author_id', 'Authors', 'Invalid Author'));

$rules->add($rules->existsIn('site_id', new SitesTable(), 'Invalid Site'));

Доступные $options — это сообщение 'message' и флаг 'allowNullableNulls'. 'message' задаёт пользовательское сообщение об ошибке. Установите 'allowNullableNulls' в значение true, чтобы принять составные внешние ключи, где один или несколько столбцов с nullable значением равны null.

Параметры

string|array $field

Поле или список полей для проверки существования по первичному ключу в другой таблице.

object|string $table
Имя таблицы, в которой будут проверяться поля.
string|array|null $message необязательно null

Сообщение об ошибке, которое будет отображаться, если правило не выполняется. Также может быть массивом опций. Если массив, ключ 'message' может быть использован для предоставления сообщения.

Возвращаемое значение

callable

isUnique()source public

isUnique( array $fields , string|array|null $message = null )

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

Пример:

$rules->add($rules->isUnique(['email'], 'The email should be unique'));

Параметры

array $fields
Список полей для проверки уникальности.
string|array|null $message необязательно null

Сообщение об ошибке, которое будет отображаться, если правило не выполняется. Также может быть массивом опций. Если массив, ключ 'message' может быть использован для предоставления сообщения.

Возвращаемое значение

callable

validCount()source public

validCount( string $field , integer $count = 0 , string $operator = '>' , string|null $message = null )

Проверяет количество связанных записей.

Параметры

string $field
Поле, на котором будет проверяться счёт.
integer $count необязательно 0
Ожидаемое количество.
string $operator необязательно '>'
Оператор для сравнения счётчика.
string|null $message необязательно null
Сообщение об ошибке, которое будет отображаться, если правило не выполняется.

Возвращаемое значение

callable

Наследуемые методы из Cake\Datasource\RulesChecker

__construct()source public

__construct( array $options = [] )

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

Параметры

array $options необязательно []
Опции, передаваемые каждому правилу

_addError()source protected

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

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

Параметры

callable $rule
Правило для декорирования
string $name
Псевдоним правила.
array $options
Опции, содержащие сообщение об ошибке и поле.

Возвращаемое значение

callable

_checkRules()source protected

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

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

Параметры

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

Возвращаемое значение

boolean

add()source public

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

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

Опции

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

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

Параметры

callable $rule

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

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

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

Возвращаемое значение


$this

addCreate()source public

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

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

Опции

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

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

Параметры

callable $rule

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

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

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

Возвращаемое значение


$this

addDelete()source public

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

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

Опции

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

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

Параметры

callable $rule

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

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

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

Возвращаемое значение


$this
END_OF_DOCUMENT_MARKER

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

© 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/3.8/class-Cake.ORM.RulesChecker.html

Spec-Zone.ru

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