Класс EagerLoadable
Представляет один уровень в дереве ассоциаций, который должен быть загружен с нетерпением для конкретного запроса. Это содержит всю необходимую информацию для извлечения результатов из базы данных из ассоциаций и всех его дочерних уровней.
Краткое описание свойств
- $_aliasPath protected
stringСтрока, разделенная точкой, представляющая путь ассоциаций, которые должны быть пройдены для извлечения этого уровня.
- $_associations protected
arrayCake\ORM\EagerLoadable>Список других ассоциаций, которые нужно загрузить с этого уровня.
- $_canBeJoined protected
boolМожно ли этот уровень извлечь с помощью соединения.
- $_config protected
array<string, mixed>Список параметров, которые нужно передать объекту ассоциации для загрузки записей.
- $_forMatching protected
bool|nullНужен ли этот уровень для операции извлечения "сопоставления".
- $_instance protected
Cake\ORM\Association|nullЭкземпляр класса Association, используемый для загрузки записей.
- $_name protected
stringИмя ассоциации для загрузки.
- $_propertyPath protected
string|nullСтрока, разделенная точкой, представляющая путь свойств сущности, в которые должны быть помещены результаты для этого уровня.
- $_targetProperty protected
string|nullИмя свойства, в котором результат ассоциации должен быть вложен в результат.
Краткое описание методов
-
__clone() public
Обрабатывает клонирование загружаемых с жадностью объектов.
-
__construct() public
Конструктор. Параметр $config принимает следующие ключи массива:
-
addAssociation() public
Добавляет новую ассоциацию, которая должна быть загружена с данного уровня.
-
aliasPath() public
Возвращает строку, разделённую точками, представляющую путь ассоциаций, которые должны быть пройдены для получения этого уровня.
-
asContainArray() public
Возвращает представление этого объекта, которое можно передать в Cake\ORM\EagerLoader::contain()
-
associations() public
Возвращает экземпляр класса Association, используемый для загрузки записей.
-
canBeJoined() public
Возвращает, может ли этот уровень быть получен с использованием соединения.
-
forMatching() public
Возвращает, предназначался ли этот уровень для операции получения «соответствия».
-
getConfig() public
Возвращает список параметров, которые нужно передать объекту ассоциации для загрузки записей.
-
instance() public
Возвращает экземпляр класса Association, используемый для загрузки записей.
-
propertyPath() public
Возвращает строку, разделённую точками, представляющую путь свойств сущности, в которые должны быть помещены результаты для этого уровня.
-
setCanBeJoined() public
Устанавливает, может ли этот уровень быть получен с использованием соединения.
-
setConfig() public
Устанавливает список параметров, которые нужно передать объекту ассоциации для загрузки записей.
-
targetProperty() public
Имя свойства, в которое результат этой ассоциации должен быть вложен в конце.
Подробное описание методов
__clone() public
__clone(): void
Обрабатывает клонирование загружаемых с жадностью объектов.
Возвращает
void__construct() public
__construct(string $name, array<string, mixed> $config = [])
Конструктор. Параметр $config принимает следующие ключи массива:
- associations
- instance
- config
- canBeJoined
- aliasPath
- propertyPath
- forMatching
- targetProperty
Ключи соответствуют устанавливаемым свойствам в этом классе.
Параметры
-
string$name Имя ассоциации.
-
array<string, mixed>$config optional Список свойств для установки.
addAssociation() public
addAssociation(string $name, Cake\ORM\EagerLoadable $association): void
Добавляет новую ассоциацию, которая должна быть загружена с данного уровня.
Параметры
-
string$name Имя ассоциации.
-
Cake\ORM\EagerLoadable$association Ассоциация для загрузки.
Возвращает
voidaliasPath() public
aliasPath(): string
Возвращает строку, разделённую точками, представляющую путь ассоциаций, которые должны быть пройдены для получения этого уровня.
Возвращает
stringasContainArray() public
asContainArray(): array<string, array>
Возвращает представление этого объекта, которое можно передать в Cake\ORM\EagerLoader::contain()
Возвращает
array<string, array>associations() public
associations(): arrayCake\ORM\EagerLoadable>
Возвращает экземпляр класса Association, используемый для загрузки записей.
Возвращает
arrayCake\ORM\EagerLoadable>canBeJoined() public
canBeJoined(): bool
Возвращает, может ли этот уровень быть получен с использованием соединения.
Возвращает
boolforMatching() public
forMatching(): bool|null
Возвращает, предназначался ли этот уровень для операции получения «соответствия».
Возвращает
bool|nullgetConfig() public
getConfig(): array<string, mixed>
Возвращает список параметров, которые нужно передать объекту ассоциации для загрузки записей.
Возвращает
array<string, mixed>instance() public
instance(): Cake\ORM\Association
Возвращает экземпляр класса Association, используемый для загрузки записей.
Возвращает
Cake\ORM\AssociationВыбрасывает
RuntimeExceptionpropertyPath() public
propertyPath(): string|null
Возвращает строку, разделённую точками, представляющую путь свойств сущности, в которые должны быть помещены результаты для этого уровня.
Например, в следующем вложенном свойстве:
$article->author->company->country
Путь свойства country будет author.company
Возвращает
string|nullsetCanBeJoined() public
setCanBeJoined(bool $possible): $this
Устанавливает, может ли этот уровень быть получен с использованием соединения.
Параметры
-
bool$possible Значение для установки.
Возвращает
$thissetConfig() public
setConfig(array<string, mixed> $config): $this
Устанавливает список параметров, которые нужно передать объекту ассоциации для загрузки записей.
Параметры
-
array<string, mixed>$config Значение для установки.
Возвращает
$thistargetProperty() public
targetProperty(): string|null
Имя свойства, в которое результат этой ассоциации должен быть вложен в конце.
Например, в следующем вложенном свойстве:
$article->author->company->country
Целевое свойство country будет просто country
Возвращает
string|nullПодробности свойства
$_aliasPath protected
Строка, разделенная точками, представляющая путь ассоциаций, которые должны быть пройдены для получения этого уровня.
Тип
string$_associations protected
Список других ассоциаций для загрузки с этого уровня.
Тип
arrayCake\ORM\EagerLoadable>$_canBeJoined protected
Можно ли получить этот уровень с помощью объединения.
Тип
bool$_config protected
Список параметров, которые нужно передать объекту ассоциации для загрузки записей.
Тип
array<string, mixed>$_forMatching protected
Предназначен ли этот уровень для операции получения «сопоставления»
Тип
bool|null$_instance protected
Экземпляр класса Association, который следует использовать для загрузки записей.
Тип
Cake\ORM\Association|null$_name protected
Имя ассоциации для загрузки.
Тип
string$_propertyPath protected
Строка, разделенная точками, представляющая путь свойств сущности, в которые должны быть помещены результаты для этого уровня.
Например, в следующей вложенной собственности:
$article->author->company->country
Путь свойства country будет author.company
Тип
string|null$_targetProperty protected
Имя свойства, где результат ассоциации должен быть вложен в результат.
Например, в следующей вложенной собственности:
$article->author->company->country
Целевое свойство country будет просто country
Тип
string|null
© 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.ORM.EagerLoadable.html