Класс ExistsIn
Проверяет, существует ли значение, указанное в поле, в качестве первичного ключа другой таблицы.
Краткое описание свойств
- $_fields protected
array<string>Список полей для проверки
- $_options protected
array<string, mixed>Параметры для конструктора
- $_repository protected
Cake\ORM\TableCake\ORM\Association|stringРепозиторий, где будет происходить поиск поля
Краткое описание методов
-
__construct() public
Конструктор.
-
__invoke() public
Выполняет проверку существования
-
_fieldsAreNull() protected
Проверяет, являются ли поля сущности пустыми и значением NULL.
Подробное описание методов
__construct() public
__construct(array<string>|string $fields, Cake\ORM\TableCake\ORM\Association|string $repository, array<string, mixed> $options = [])
Конструктор.
Доступный параметр для $options — флаг 'allowNullableNulls'. Установите его в значение true, чтобы принять составные внешние ключи, где один или несколько столбцов с NULL могут быть пустыми.
Параметры
-
array<string>|string$fields Поле или поля для проверки существования в качестве первичного ключа.
-
Cake\ORM\TableCake\ORM\Association|string$repository Репозиторий, где будет происходить поиск поля, или имя ассоциации для репозитория.
-
array<string, mixed>$options optional Параметры, которые изменяют поведение правила. Параметр 'allowNullableNulls' заставит правило пройти, если заданные внешние ключи установлены в значение
null. Примечание: allowNullableNulls не может пройти, если столбцы базы данных установлены в значениеNOT NULL.
__invoke() public
__invoke(Cake\Datasource\EntityInterface $entity, array<string, mixed> $options): bool
Выполняет проверку существования
Параметры
-
Cake\Datasource\EntityInterface$entity Сущность, из которой извлечь поля
-
array<string, mixed>$options Параметры, переданные для проверки, где ключ
repositoryобязателен.
Возвращает
boolИсключения
RuntimeExceptionПри ссылке на неопределённую ассоциацию.
_fieldsAreNull() protected
_fieldsAreNull(Cake\Datasource\EntityInterface $entity, Cake\ORM\Table $source): bool
Проверяет, являются ли поля сущности пустыми и значением NULL.
Параметры
-
Cake\Datasource\EntityInterface$entity Сущность для проверки.
-
Cake\ORM\Table$source Таблица для использования схемы.
Возвращает
boolПодробное описание свойств
$_fields protected
Список полей для проверки
Тип
array<string>$_options protected
Параметры для конструктора
Тип
array<string, mixed>$_repository protected
Репозиторий, где будет происходить поиск поля
Тип
Cake\ORM\TableCake\ORM\Association|string
© 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.3/class-Cake.ORM.Rule.ExistsIn.html