Spec-Zone.ru › CakePHP 3.2

Класс AssociationCollection

Контейнер/коллекция для ассоциативных классов.

Содержит методы для управления ассоциациями и операций упорядочения при сохранении и удалении.

Cake\ORM\AssociationCollection реализует IteratorAggregate использует Cake\ORM\AssociationsNormalizerTrait
Пространство имён: Cake\ORM
Расположение: ORM/AssociationCollection.php

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

  • $_items protected
    array
    Сохранённые ассоциации

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

  • _save() protected
    Вспомогательный метод для сохранения данных ассоциации.
  • _saveAssociations() protected
    Вспомогательный метод для сохранения данных ассоциации.
  • add() public
    Добавить ассоциацию в коллекцию
  • cascadeDelete() public

    Каскадное удаление по различным ассоциациям. Сначала каскадное удаление по ассоциациям, для которых cascadeCallbacks равно true.

  • get() public
    Получение присоединённой ассоциации по имени.
  • getByProperty() public
    Получение ассоциации по имени свойства.
  • getIterator() public
    Разрешить циклический проход по ассоциациям
  • has() public
    Проверка наличия присоединённой ассоциации по имени.
  • keys() public
    Получение имён всех ассоциаций в коллекции.
  • normalizeKeys() public

    Возвращает ассоциативный массив имён ассоциаций из смешанного массива. Если передано true, возвращает все имена ассоциаций в этой коллекции.

  • remove() public
    Удаление ассоциации.
  • removeAll() public
    Удаление всех зарегистрированных ассоциаций.
  • saveChildren() public
    Сохранение всех ассоциаций, являющихся дочерними для данного сущности.
  • saveParents() public
    Сохранение всех ассоциаций, являющихся родительскими для данной сущности.
  • type() public
    Получение массива ассоциаций, соответствующих определённому типу.

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

_save()source protected

_save( Cake\ORM\Association $association , Cake\Datasource\EntityInterface $entity , array $nested , array $options )

Вспомогательный метод для сохранения данных ассоциации.

Параметры

Cake\ORM\Association $association
Объект ассоциации для сохранения.
Cake\Datasource\EntityInterface $entity
Сущность для сохранения
массив $nested
Параметры для более глубоких ассоциаций
массив $options
Исходные параметры

Возвращаемое значение

boolean
Успех

_saveAssociations()source protected

_saveAssociations( Cake\ORM\Table $table , Cake\Datasource\EntityInterface $entity , array $associations , array $options , boolean $owningSide )

Вспомогательный метод для сохранения данных ассоциации.

Параметры

Cake\ORM\Table $table
Таблица, на которой в настоящее время выполняется сохранение
Cake\Datasource\EntityInterface $entity
Сущность для сохранения
массив $associations
Массив ассоциаций для сохранения.
массив $options
Исходные параметры
boolean $owningSide

Сравнивается с методом isOwningSide класса ассоциативных классов.

Возвращаемое значение

boolean
Успех

Исключения

InvalidArgumentException
При использовании неизвестного псевдонима.

add()source public

add( string $alias , Cake\ORM\Association $association )

Добавить ассоциацию в коллекцию

Если добавленный псевдоним содержит ., часть перед . будет удалена. Это упрощает использование плагинов, так как часто используется синтаксис Plugin.Class.

Параметры

строка $alias
Псевдоним ассоциации
Cake\ORM\Association $association
Ассоциация для добавления.

Возвращаемое значение

Cake\ORM\Association
Объект добавляемой ассоциации.

cascadeDelete()source public

cascadeDelete( Cake\Datasource\EntityInterface $entity , array $options )

Каскадное удаление по различным ассоциациям. Сначала каскадное удаление по ассоциациям, для которых cascadeCallbacks равно true.

Параметры

Cake\Datasource\EntityInterface $entity
Сущность, для которой удаляются ассоциации.
массив $options
Параметры, используемые в операции удаления.

get()source public

get( string $alias )

Получение присоединённой ассоциации по имени.

Параметры

строка $alias
Псевдоним ассоциации для получения.

Возвращаемое значение

Cake\ORM\Association|null
Ассоциация или null.

getByProperty()source public

getByProperty( string $prop )

Получение ассоциации по имени свойства.

Параметры

строка $prop
Свойство для поиска ассоциации.

Возвращаемое значение

Cake\ORM\Association|null
Ассоциация или null.

getIterator()source public

getIterator( )

Разрешить циклический проход по ассоциациям

Возвращаемое значение

ArrayIterator

Реализация

IteratorAggregate::getIterator()

has()source public

has( string $alias )

Проверка наличия присоединённой ассоциации по имени.

Параметры

строка $alias
Псевдоним ассоциации для получения.

Возвращаемое значение

boolean
Существует ли ассоциация.

keys()source public

keys( )

Получение имён всех ассоциаций в коллекции.

Возвращаемое значение

массив

normalizeKeys()source public

normalizeKeys( boolean|array $keys )

Возвращает ассоциативный массив имён ассоциаций из смешанного массива. Если передано true, возвращает все имена ассоциаций в этой коллекции.

Параметры

boolean|массив $keys
список имён ассоциаций для нормализации

Возвращаемое значение

массив

remove()source public

remove( string $alias )

Удаление ассоциации.

После удаления к ассоциации больше нельзя получить доступ

Параметры

строка $alias
Имя псевдонима.

removeAll()source public

removeAll( )

Удаление всех зарегистрированных ассоциаций.

После удаления к ассоциациям больше нельзя получить доступ

END_OF_DOCUMENT_MARKER

saveChildren()source public

saveChildren( Cake\ORM\Table $table , Cake\Datasource\EntityInterface $entity , array $associations , array $options )

Сохранить все ассоциации, которые являются дочерними для данного сущности.

Дочерние ассоциации включают любые ассоциации, где заданная таблица не является стороной владения.

Parameters

Cake\ORM\Table $table
Сущность таблицы.
Cake\Datasource\EntityInterface $entity
Сущность для сохранения связанных данных.
array $associations

Список ассоциаций для сохранения дочерних элементов. Ассоциации, не входящие в этот список, не будут сохранены.

array $options
Параметры для операции сохранения.

Returns

boolean
Успех

saveParents()source public

saveParents( Cake\ORM\Table $table , Cake\Datasource\EntityInterface $entity , array $associations , array $options [] )

Сохранить все ассоциации, которые являются родительскими для данной сущности.

Родительские ассоциации включают любые ассоциации, где данная таблица является стороной владения.

Parameters

Cake\ORM\Table $table
Сущность таблицы.
Cake\Datasource\EntityInterface $entity
Сущность для сохранения связанных данных.
array $associations

Список ассоциаций для сохранения родительских элементов. Ассоциации, не входящие в этот список, не будут сохранены.

array $options optional []
Параметры для операции сохранения.

Returns

boolean
Успех

type()source public

type( string|array $class )

Получить массив ассоциаций, соответствующих определённому типу.

Parameters

string|array $class

Тип ассоциаций, например 'BelongsTo' или массив ['BelongsTo', 'HasOne'].

Returns

array
Массив объектов Association.

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

_normalizeAssociations()source protected

_normalizeAssociations( array $associations )

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

Parameters

array $associations
Массив включённых ассоциаций.

Returns

array
Массив с преобразованными обозначениями точек в вложенные массивы

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

$_itemssource

protected array

Сохранённые ассоциации

[]

© 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.2/class-Cake.ORM.AssociationCollection.html

Spec-Zone.ru

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