Spec-Zone.ru › CakePHP 3.1

Трейт ExternalAssociationTrait

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

Cake\ORM\Association\ExternalAssociationTrait использует Cake\ORM\Association\SelectableAssociationTrait

Прямые известные пользователи

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

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

_buildResultMapисходный код protected

_buildResultMap( mixed $fetchQuery , mixed $options )

_defaultOptionsисходный код protected

_defaultOptions( )

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

Возвращает

array
массив

_optionsисходный код protected

_options( array $opts )

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

Параметры

массив $opts
исходный список параметров, переданных в конструктор

canBeJoinedисходный код public

canBeJoined( array $options [] )

Можно ли выразить эту ассоциацию напрямую в объединении запроса?

Параметры

массив $options необязательно []
ключ с пользовательскими параметрами, которые могут изменить возвращаемое значение

Возвращает

boolean
если ключ 'matching' в $option имеет значение true, то эта функция вернёт true, иначе false

defaultRowValueисходный код public

defaultRowValue( mixed $row , mixed $joined )

foreignKeyисходный код public

foreignKey( string|null $key null )

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

Параметры

строка|null $key необязательно null
ключ, используемый для связи обеих таблиц

Возвращает

string
строка

sortисходный код public

sort( mixed $sort null )

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

Параметры

смешанный $sort необязательно null
оператор find() совместимый с порядком сортировки

Возвращает

mixed
смешанный

Методы, используемые из Cake\ORM\Association\SelectableAssociationTrait

_addFilteringConditionисходный код protected

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

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

Параметры

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

Возвращает

Cake\ORM\Query
\Cake\ORM\Query

_addFilteringJoinисходный код public

_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исходный код protected

_buildQuery( array $options )

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

Параметры

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

Возвращает

Cake\ORM\Query
\Cake\ORM\Query

Исключения

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

_buildSubqueryисходный код protected

_buildSubquery( Cake\ORM\Query $query )

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

Параметры

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

Возвращает

Cake\ORM\Query
\Cake\ORM\Query

_createTupleConditionисходный код protected

_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

_linkFieldисходный код abstract protected

_linkField( array $options )

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

Параметры

массив $options
Параметры для получения поля связи.

Возвращает

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

_multiKeysInjectorисходный код protected

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

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

Параметры

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

Возвращает

Closure
\Closure

_resultInjectorисходный код protected

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

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

Параметры

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

Возвращает

Closure
\Closure
END_OF_DOCUMENT_MARKER

_subqueryFieldssource protected

_subqueryFields( Cake\ORM\Query $query )

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

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

Параметры

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

Возвращает

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

eagerLoadersource public

eagerLoader( array $options )

requiresKeyssource public

requiresKeys( array $options [] )

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

Параметры

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

Возвращает

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

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

$_sortsource

protected mixed

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

© 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.ExternalAssociationTrait.html

Spec-Zone.ru

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