CHasManyRelation
| Пакет | system.db.ar |
|---|---|
| Наследование | class CHasManyRelation » CActiveRelation » CBaseActiveRelation » CComponent |
| Подклассы | CManyManyRelation |
| С момента | 1.0 |
| Исходный код | framework/db/ar/CActiveRecord.php |
CHasManyRelation представляет параметры, определяющие отношение HAS_MANY.
Общедоступные свойства
| Свойство | Тип | Описание | Определено в |
|---|---|---|---|
| alias | string | псевдоним таблицы, на которую ссылается данное отношение. | CActiveRelation |
| className | string | имя связанного класса активной записи | CBaseActiveRelation |
| condition | string | запрос WHERE. | CBaseActiveRelation |
| foreignKey | mixed | внешний ключ в данном отношении | CBaseActiveRelation |
| group | string | запрос GROUP BY. | CBaseActiveRelation |
| having | string | запрос HAVING. | CBaseActiveRelation |
| index | string | имя столбца, который должен использоваться в качестве ключа для хранения связанных объектов. | CHasManyRelation |
| join | string | способ объединения с другими таблицами. | CBaseActiveRelation |
| joinOptions | string|array | свойство для установки пост-операций JOIN, таких как USE INDEX. | CBaseActiveRelation |
| joinType | string | тип объединения. | CActiveRelation |
| limit | integer | ограничение на количество строк для выбора. | CHasManyRelation |
| name | string | имя связанного объекта | CBaseActiveRelation |
| offset | integer | смещение строк для выбора. | CHasManyRelation |
| on | string | запрос ON. | CActiveRelation |
| order | string | запрос ORDER BY. | CBaseActiveRelation |
| params | array | параметры, которые будут привязаны к условию. | CBaseActiveRelation |
| scopes | mixed | применяемые области видимости. Могут быть установлены следующим образом:
| CActiveRelation |
| select | mixed | список имён столбцов (массив или строка имён, разделенных запятыми) для выбора. | CBaseActiveRelation |
| through | string | имя отношения, которое должно использоваться в качестве моста к данному отношению. | CActiveRelation |
| together | boolean | необходимо ли объединять данную таблицу с основной таблицей. | CActiveRelation |
| with | string|array | указывается, какие связанные объекты должны быть загружены при ленивой загрузке связанного объекта. | CActiveRelation |
Общедоступные методы
| Метод | Описание | Определено в |
|---|---|---|
| __call() | Вызывает метод по имени, который не является методом класса. | CComponent |
| __construct() | Конструктор. | CBaseActiveRelation |
| __get() | Возвращает значение свойства, список обработчиков событий или поведение по имени. | CComponent |
| __isset() | Проверяет, является ли значение свойства нулевым. | CComponent |
| __set() | Устанавливает значение свойства компонента. | CComponent |
| __unset() | Устанавливает свойство компонента в значение null. | CComponent |
| asa() | Возвращает объект поведения по имени. | CComponent |
| attachBehavior() | Присоединяет поведение к данному компоненту. | CComponent |
| attachBehaviors() | Присоединяет список поведений к компоненту. | CComponent |
| attachEventHandler() | Присоединяет обработчик событий к событию. | CComponent |
| canGetProperty() | Определяет, может ли свойство быть прочитано. | CComponent |
| canSetProperty() | Определяет, может ли свойство быть установлено. | CComponent |
| detachBehavior() | Отсоединяет поведение от компонента. | CComponent |
| detachBehaviors() | Отсоединяет все поведения от компонента. | CComponent |
| detachEventHandler() | Отсоединяет существующий обработчик событий. | CComponent |
| disableBehavior() | Отключает присоединённое поведение. | CComponent |
| disableBehaviors() | Отключает все присоединённые поведения к данному компоненту. | CComponent |
| enableBehavior() | Включает присоединённое поведение. | CComponent |
| enableBehaviors() | Включает все присоединённые поведения к данному компоненту. | CComponent |
| evaluateExpression() | Вычисляет PHP-выражение или обратный вызов в контексте данного компонента. | CComponent |
| getEventHandlers() | Возвращает список присоединённых обработчиков событий для события. | CComponent |
| hasEvent() | Определяет, определено ли событие. | CComponent |
| hasEventHandler() | Проверяет, есть ли присоединённые обработчики для события с заданным именем. | CComponent |
| hasProperty() | Определяет, определено ли свойство. | CComponent |
| mergeWith() | Объединяет данное отношение с критериями, заданными динамически. | CHasManyRelation |
| raiseEvent() | Вызывает событие. | CComponent |
Подробности о свойствах
index свойство
public string $index;
имя столбца, который должен использоваться в качестве ключа для хранения связанных объектов. По умолчанию равно null, что означает использование целочисленных идентификаторов, начинающихся с нуля.
limit свойство
public integer $limit;
предел строк, которые должны быть выбраны. Действует только для леничной загрузки этого связанного объекта. По умолчанию равен -1, что означает отсутствие ограничения.
offset свойство
public integer $offset;
смещение строк, которые должны быть выбраны. Действует только для леничной загрузки этого связанного объекта. По умолчанию равен -1, что означает отсутствие смещения.
Подробное описание методов
mergeWith() метод
public void mergeWith(array $criteria, boolean $fromScope=false) | ||
| $criteria | массив | динамически заданные критерии |
| $fromScope | логическое значение | являются ли критерии, которые будут объединены, из области видимости |
Исходный код: framework/db/ar/CActiveRecord.php#2279 (показать)
public function mergeWith($criteria,$fromScope=false)
{
if($criteria instanceof CDbCriteria)
$criteria=$criteria->toArray();
parent::mergeWith($criteria,$fromScope);
if(isset($criteria['limit']) && $criteria['limit']>0)
$this->limit=$criteria['limit'];
if(isset($criteria['offset']) && $criteria['offset']>=0)
$this->offset=$criteria['offset'];
if(isset($criteria['index']))
$this->index=$criteria['index'];
}
Объединяет это отношение с динамически заданными критериями.
© 2008–2017 by Yii Software LLC
Licensed under the three clause BSD license.
http://www.yiiframework.com/doc/api/1.1/CHasManyRelation