LS_ManyToManyRelation

Package engine.orm
Inheritance class LS_ManyToManyRelation » LsObject
Since 1.0
Source Code /engine/classes/ManyToManyRelation.class.php
Класс представляющий собой обёертку для связей MANY_TO_MANY. Позволяет оперировать коллекцией загруженных по связи элементов через имя связи Например
$oTopic->Tags->add($oTag)
// или
$oTopic->Tags->delete($oTag->getId())
при наличии настроенной MANY_TO_MANY связи 'tags'

Protected Properties

Hide inherited properties

PropertyTypeDescriptionDefined By
_aCollection array Список объектов связи LS_ManyToManyRelation
bUpdated bool Флаг обновления списка объектов связи LS_ManyToManyRelation

Public Methods

Hide inherited methods

MethodDescriptionDefined By
__construct() Устанавливает список объектов LS_ManyToManyRelation
add() Добавление объекта в список LS_ManyToManyRelation
delete() Удаление объекта из списка по его id или массиву id LS_ManyToManyRelation
getCollection() Возвращает список объектов связи LS_ManyToManyRelation
isUpdated() Проверка списка на обновление LS_ManyToManyRelation

Property Details

_aCollection property
protected array $_aCollection;

Список объектов связи

bUpdated property
protected bool $bUpdated;

Флаг обновления списка объектов связи

Method Details

__construct() method
public void __construct($aCollection $aCollection)
$aCollection $aCollection Список объектов связи
Source Code: /engine/classes/ManyToManyRelation.class.php#51 (show)
public function __construct($aCollection) {
    
$this->_aCollection $aCollection;
}

Устанавливает список объектов

add() method
public void add(Entity $oEntity)
$oEntity Entity
Source Code: /engine/classes/ManyToManyRelation.class.php#59 (show)
public function add($oEntity) {
    
$this->bUpdated true;
    
$this->_aCollection[$oEntity->_getPrimaryKeyValue()] = $oEntity;
}

Добавление объекта в список

delete() method
public void delete(int|array $iId)
$iId int|array
Source Code: /engine/classes/ManyToManyRelation.class.php#68 (show)
public function delete($iId) {
    
$this->bUpdated true;
    if (
is_array($iId)) {
        foreach (
$iId as $id) {
            if (isset(
$this->_aCollection[$id])) {
                unset(
$this->_aCollection[$id]);
            }
        }
    } elseif (isset(
$this->_aCollection[$iId])) {
        unset(
$this->_aCollection[$iId]);
    }
}

Удаление объекта из списка по его id или массиву id

getCollection() method
public array getCollection()
{return} array
Source Code: /engine/classes/ManyToManyRelation.class.php#85 (show)
public function getCollection() {
    return 
$this->_aCollection;
}

Возвращает список объектов связи

isUpdated() method
public bool isUpdated()
{return} bool
Source Code: /engine/classes/ManyToManyRelation.class.php#93 (show)
public function isUpdated() {
    return 
$this->bUpdated;
}

Проверка списка на обновление