Spec-Zone.ru › CakePHP 3.1

Характеристика SelectableAssociationTrait

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

Непосредственные известные пользователи

Cake\ORM\Association\BelongsTo, Cake\ORM\Association\ExternalAssociationTrait, Cake\ORM\Association\HasOne
Пространство имён: Cake\ORM\Association
Расположение ORM/Association/SelectableAssociationTrait.php

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

_addFilteringConditionисходный код защищённый

_addFilteringCondition( Cake\ORM\Query $query , string|array $key , mixed $filter )

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

Параметры

Cake\ORM\Query $query
Запрос целевой таблицы
строка|массив $key
поля, которые должны использоваться для фильтрации
смешанное $filter
значение, которое должно использоваться для соответствия $key

Возвращает

Cake\ORM\Query
\Cake\ORM\Query

_addFilteringJoinисходный код публичный

_addFilteringJoin( Cake\ORM\Query $query , string $key , Cake\ORM\Query $subquery )

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

Параметры

Cake\ORM\Query $query
Запрос целевой таблицы
строка $key
поля, которые должны использоваться для фильтрации
Cake\ORM\Query $subquery
Подзапрос для использования в фильтрации

Возвращает

Cake\ORM\Query
\Cake\ORM\Query

_buildQueryисходный код защищённый

_buildQuery( array $options )

Вспомогательная функция для построения нового объекта Query, возвращающего все записи в целевой таблице, связанные с теми, которые указаны в $options из исходной таблицы

Параметры

массив $options
опции, принимаемые eagerLoader()

Возвращает

Cake\ORM\Query
\Cake\ORM\Query

Выбрасывает

InvalidArgumentException
Когда ключ необходим для ассоциаций, но не выбран.

_buildResultMapисходный код абстрактный защищённый

_buildResultMap( Cake\ORM\Query $fetchQuery , array $options )

Строит массив, содержащий результаты из fetchQuery, индексированные по значению foreignKey, соответствующему данной ассоциации.

Параметры

Cake\ORM\Query $fetchQuery
Запрос для получения результатов
массив $options
Опции, переданные в eager loader

Возвращает

array
массив

_buildSubqueryисходный код защищённый

_buildSubquery( Cake\ORM\Query $query )

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

Параметры

Cake\ORM\Query $query
исходный запрос, используемый для загрузки исходных записей

Возвращает

Cake\ORM\Query
\Cake\ORM\Query

_createTupleConditionисходный код защищённый

_createTupleCondition( Cake\ORM\Query $query , array $keys , mixed $filter , string $operator )

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

Параметры

Cake\ORM\Query $query
Запрос целевой таблицы
массив $keys
поля, которые должны использоваться для фильтрации
смешанное $filter
значение, которое должно использоваться для соответствия $key
строка $operator
Оператор для сравнения кортежей

Возвращает

Cake\Database\Expression\TupleComparison
\Cake\Database\Expression\TupleComparison

_defaultOptionsисходный код защищённый

_defaultOptions( )

Возвращает значения по умолчанию для использования в eagerLoader

Возвращает

array
массив

_linkFieldисходный код абстрактный защищённый

_linkField( array $options )

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

Параметры

массив $options
Опции для получения поля связи.

Возвращает

string|array
строка|массив

_multiKeysInjectorисходный код защищённый

_multiKeysInjector( array $resultMap , array $sourceKeys , string $nestKey )

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

Параметры

массив $resultMap
Массив с индексированными ключами, содержащий целевую таблицу
массив $sourceKeys
Массив с алиасами ключей для соответствия
строка $nestKey
Ключ, под которым результаты должны быть вложены

Возвращает

Closure
\Closure

_resultInjectorисходный код защищённый

_resultInjector( Cake\ORM\Query $fetchQuery , array $resultMap , array $options )

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

Параметры

Cake\ORM\Query $fetchQuery
Запрос, используемый для получения результатов
массив $resultMap
массив с внешними ключами в качестве ключей и соответствующими результатами целевой таблицы в качестве значений.
массив $options
Опции, переданные методу eagerLoader

Возвращает

Closure
\Closure

_subqueryFieldsисходный код защищённый

_subqueryFields( Cake\ORM\Query $query )

Вычисляет поля, которые должны участвовать в подзапросе.

Обычно это включает столбцы ключа связывания. Если есть ORDER BY, эти столбцы также включаются, так как поля могут быть вычислены или представлять собой постоянные значения, которые должны присутствовать, чтобы обеспечить загрузку правильных данных ассоциации.

Параметры

Cake\ORM\Query $query
Запрос для получения полей.

Возвращает

array
Список полей для подзапроса.

eagerLoaderисходный код публичный

eagerLoader( array $options )

requiresKeysисходный код публичный

requiresKeys( array $options [] )

Возвращает true, если процесс eager loading потребует набор связующих ключей таблицы владельца, чтобы использовать их в качестве фильтра в запросе поиска.

Параметры

массив $options необязательно []
Опции, содержащие используемую стратегию.

Возвращает

boolean
true, если потребуется список ключей

© 2005–2016 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.
http://api.cakephp.org/3.1/class-Cake.ORM.Association.SelectableAssociationTrait.html

Spec-Zone.ru

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