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