Класс yii\mongodb\file\ActiveQuery
| Наследование | yii\mongodb\file\ActiveQuery » yii\mongodb\file\Query » yii\mongodb\Query » yii\base\Component » yii\base\Object |
|---|---|
| Реализует | yii\base\Configurable, yii\db\ActiveQueryInterface, yii\db\QueryInterface |
| Использует трейты | yii\db\ActiveQueryTrait, yii\db\ActiveRelationTrait, yii\db\QueryTrait |
| Доступна с версии | 2.0 |
| Исходный код | https://github.com/yiisoft/yii2-mongodb/blob/master/file/ActiveQuery.php |
ActiveQuery представляет запрос Mongo, связанный с классом Active Record файла.
Экземпляры ActiveQuery обычно создаются методом yii\mongodb\file\ActiveRecord::find().
Поскольку ActiveQuery наследуется от yii\mongodb\file\Query, можно использовать методы запроса, такие как where(), orderBy(), для настройки параметров запроса.
ActiveQuery также предоставляет следующие дополнительные параметры запроса:
- with(): список отношений, с которыми должен выполняться этот запрос.
- asArray(): нужно ли возвращать каждую запись в виде массива.
Эти параметры можно настроить, используя методы с таким же именем. Например:
$images = ImageFile::find()->with('tags')->asArray()->all();
Общедоступные свойства
| Свойство | Тип | Описание | Определено в |
|---|---|---|---|
| $asArray | boolean | Нужно ли возвращать каждую запись в виде массива. | yii\db\ActiveQueryTrait |
| $behaviors | yii\base\Behavior[] | Список присоединенных к этому компоненту поведений | yii\base\Component |
| $collection | yii\mongodb\file\Collection | Экземпляр коллекции. | yii\mongodb\file\ActiveQuery |
| $emulateExecution | boolean | Имитировать фактическое выполнение запроса, возвращая пустые или ложные результаты. | yii\db\QueryTrait |
| $from | string|array | Коллекция для выборки. | yii\mongodb\Query |
| $indexBy | string|callable | Имя столбца, по которому должны быть индексированы результаты запроса. | yii\db\QueryTrait |
| $inverseOf | string | Имя отношения, которое является обратным этому отношению. | yii\db\ActiveRelationTrait |
| $limit | integer|yii\db\Expression | Максимальное количество возвращаемых записей. | yii\db\QueryTrait |
| $link | array | Столбцы первичной и внешней таблиц, которые устанавливают отношение. | yii\db\ActiveRelationTrait |
| $modelClass | string | Имя класса ActiveRecord. | yii\db\ActiveQueryTrait |
| $multiple | boolean | Представляет ли этот запрос отношение к нескольким записям. | yii\db\ActiveRelationTrait |
| $offset | integer|yii\db\Expression | Сдвиг со с нулевой позиции, от которого будут возвращаться записи. | yii\db\QueryTrait |
| $options | array | Параметры курсора в формате: optionKey => optionValue | yii\mongodb\Query |
| $orderBy | array | Сортировка результатов запроса. | yii\db\QueryTrait |
| $primaryModel | yii\db\ActiveRecord | Основная модель реляционного запроса. | yii\db\ActiveRelationTrait |
| $select | array | Поля результатов, которые нужно вернуть. | yii\mongodb\Query |
| $via | array|object | Запрос, связанный с таблицей соединения. | yii\db\ActiveRelationTrait |
| $where | string|array | Условие запроса. | yii\db\QueryTrait |
| $with | array | Список отношений, с которыми должен выполняться этот запрос | yii\db\ActiveQueryTrait |
Общедоступные методы
| Метод | Описание | Определено в |
|---|---|---|
| __call() | Вызывает именованный метод, который не является методом класса. | yii\base\Component |
| __clone() | Клонирует внутренние объекты. | yii\db\ActiveRelationTrait |
| __construct() | Конструктор. | yii\mongodb\file\ActiveQuery |
| __get() | Возвращает значение свойства компонента. | yii\base\Component |
| __isset() | Проверяет, установлено ли свойство, т.е. определено и не равно null. | yii\base\Component |
| __set() | Устанавливает значение свойства компонента. | yii\base\Component |
| __unset() | Устанавливает свойство компонента в null. | yii\base\Component |
| addOptions() | Добавляет дополнительные параметры курсора. | yii\mongodb\Query |
| addOrderBy() | Добавляет дополнительные столбцы ORDER BY в запрос. | yii\db\QueryTrait |
| all() | Выполняет запрос и возвращает все результаты в виде массива. | yii\mongodb\file\ActiveQuery |
| andFilterCompare() | Вспомогательный метод для удобного выполнения запросов по значениям, содержащим некоторые общие операторы. | yii\mongodb\Query |
| andFilterWhere() | Добавляет дополнительное условие WHERE к существующему, но игнорирует пустые операнды. | yii\db\QueryTrait |
| andWhere() | Добавляет дополнительное условие WHERE к существующему. | yii\db\QueryTrait |
| asArray() | Устанавливает свойство asArray(). | yii\db\ActiveQueryTrait |
| attachBehavior() | Присоединяет поведение к этому компоненту. | yii\base\Component |
| attachBehaviors() | Присоединяет список поведений к компоненту. | yii\base\Component |
| average() | Возвращает среднее значение указанных значений столбца. | yii\mongodb\Query |
| batch() | Начинает пакетный запрос. | yii\mongodb\Query |
| behaviors() | Возвращает список поведений, по которым этот компонент должен вести себя. | yii\base\Component |
| buildCursor() | Создает MongoDB курсор для этого запроса. | yii\mongodb\file\ActiveQuery |
| canGetProperty() | Возвращает значение, указывающее, можно ли прочитать свойство. | yii\base\Component |
| canSetProperty() | Возвращает значение, указывающее, можно ли установить свойство. | yii\base\Component |
| className() | Возвращает полное имя этого класса. | yii\base\Object |
| column() | Выполняет запрос и возвращает первый столбец результата. | yii\mongodb\Query |
| count() | Возвращает количество записей. | yii\mongodb\Query |
| detachBehavior() | Отсоединяет поведение от компонента. | yii\base\Component |
| detachBehaviors() | Отсоединяет все поведения от компонента. | yii\base\Component |
| distinct() | Возвращает список уникальных значений для указанного столбца в коллекции. | yii\mongodb\Query |
| each() | Начинает пакетный запрос и извлекает данные строка за строкой. | yii\mongodb\Query |
| emulateExecution() | Устанавливает, следует ли эмулировать выполнение запроса, предотвращая взаимодействие с хранилищем данных. | yii\db\QueryTrait |
| ensureBehaviors() | Убеждается, что поведения, объявленные в behaviors(), присоединены к этому компоненту. | yii\base\Component |
| exists() | Возвращает значение, указывающее, содержит ли результат запроса какую-либо строку данных. | yii\mongodb\Query |
| filterWhere() | Устанавливает часть WHERE запроса, но игнорирует пустые операнды. | yii\db\QueryTrait |
| findFor() | Ищет связанные записи для указанной основной записи. | yii\db\ActiveRelationTrait |
| findWith() | Ищет записи, соответствующие одному или нескольким отношениям, и заполняет ими основные модели. | yii\db\ActiveQueryTrait |
| from() | Устанавливает коллекцию, из которой следует выбрать. | yii\mongodb\Query |
| getBehavior() | Возвращает объект именованного поведения. | yii\base\Component |
| getBehaviors() | Возвращает все поведения, присоединенные к этому компоненту. | yii\base\Component |
| getCollection() | Возвращает Mongo коллекцию для этого запроса. | yii\mongodb\file\ActiveQuery |
| hasEventHandlers() | Возвращает значение, указывающее, есть ли какой-либо обработчик, присоединенный к заданному событию. | yii\base\Component |
| hasMethod() | Возвращает значение, указывающее, определен ли метод. | yii\base\Component |
| hasProperty() | Возвращает значение, указывающее, определено ли свойство для этого компонента. | yii\base\Component |
| indexBy() | Устанавливает свойство indexBy(). | yii\db\QueryTrait |
| init() | Инициализирует объект. | yii\mongodb\file\ActiveQuery |
| inverseOf() | Устанавливает имя отношения, которое является обратным к этому отношению. | yii\db\ActiveRelationTrait |
| limit() | Устанавливает часть LIMIT запроса. | yii\db\QueryTrait |
| max() | Возвращает максимальное значение указанных значений столбца. | yii\mongodb\Query |
| min() | Возвращает минимальное значение указанных значений столбца. | yii\mongodb\Query |
| modify() | Выполняет запрос 'findAndModify' и возвращает одну строку результата. | yii\mongodb\Query |
| off() | Отсоединяет существующий обработчик событий от этого компонента. | yii\base\Component |
| offset() | Устанавливает часть OFFSET запроса. | yii\db\QueryTrait |
| on() | Прикрепляет обработчик событий к событию. | yii\base\Component |
| one() | Выполняет запрос и возвращает единственную строку результата. | yii\mongodb\file\ActiveQuery |
| options() | Устанавливает параметры курсора. | yii\mongodb\Query |
| orFilterWhere() | Добавляет дополнительное условие WHERE к существующему, но игнорирует пустые операнды. | yii\db\QueryTrait |
| orWhere() | Добавляет дополнительное условие WHERE к существующему. | yii\db\QueryTrait |
| orderBy() | Устанавливает часть ORDER BY запроса. | yii\db\QueryTrait |
| populate() | Преобразует сырые результаты запроса в формат, указанный этим запросом. | yii\mongodb\file\ActiveQuery |
| populateRelation() | Находит связанные записи и заполняет ими первичные модели. | yii\db\ActiveRelationTrait |
| prepare() | Подготавливает запрос к построению. | yii\mongodb\Query |
| scalar() | Возвращает результат запроса как скалярное значение. | yii\mongodb\Query |
| select() | Устанавливает список полей результатов, которые нужно вернуть. | yii\mongodb\Query |
| sum() | Возвращает сумму значений указанного столбца. | yii\mongodb\Query |
| trigger() | Вызывает событие. | yii\base\Component |
| via() | Указывает отношение, связанное с таблицей соединения. | yii\db\ActiveRelationTrait |
| where() | Устанавливает часть WHERE запроса. | yii\db\QueryTrait |
| with() | Указывает отношения, с которыми должен выполняться этот запрос. | yii\db\ActiveQueryTrait |
Защищенные методы
| Метод | Описание | Определено в |
|---|---|---|
| aggregate() | Выполняет агрегацию для заданного столбца. | yii\mongodb\Query |
| createModels() | Преобразует найденные строки в экземпляры модели | yii\db\ActiveQueryTrait |
| fetchRows() | Извлекает строки из заданного курсора Mongo. | yii\mongodb\Query |
| fetchRowsInternal() | yii\mongodb\Query | |
| filterCondition() | Удаляет пустые операнды из заданного условия запроса. | yii\db\QueryTrait |
| isEmpty() | Возвращает значение, указывающее, является ли данное значение "пустым". | yii\db\QueryTrait |
| normalizeOrderBy() | Нормализует формат данных ORDER BY | yii\db\QueryTrait |
События
| Событие | Тип | Описание | Определено в |
|---|---|---|---|
| EVENT_INIT | \yii\mongodb\file\Event | Событие, которое срабатывает при инициализации запроса через init(). | yii\mongodb\file\ActiveQuery |
Подробное описание свойств
$collection public только для чтения свойство
Экземпляр коллекции.
public yii\mongodb\file\Collection getCollection ( $db = null )
Подробное описание методов
__construct() public метод
Конструктор.
| public void __construct ( $modelClass, $config = [] ) | ||
|---|---|---|
| $modelClass | массив |
Класс модели, связанный с этим запросом |
| $config | массив |
Конфигурации, которые будут применены к новосозданному объекту запроса |
all() public метод
Выполняет запрос и возвращает все результаты в виде массива.
| public массив|yii\mongodb\file\ActiveRecord all ( $db = null ) | ||
|---|---|---|
| $db | yii\mongodb\Connection |
Подключение к MongoDB, используемое для выполнения запроса. Если null, используется подключение к MongoDB, возвращаемое $modelClass. |
| return | массив|yii\mongodb\file\ActiveRecord |
Результаты запроса. Если запрос ничего не возвращает, возвращается пустой массив. |
buildCursor() public метод
Строит курсор MongoDB для этого запроса.
| public \MongoDB\Driver\Cursor buildCursor ( $db = null ) | ||
|---|---|---|
| $db | yii\mongodb\Connection |
Подключение к MongoDB, используемое для выполнения запроса. |
| return | \MongoDB\Driver\Cursor |
Экземпляр курсора Mongo. |
getCollection() public метод
Возвращает коллекцию Mongo для этого запроса.
| public yii\mongodb\file\Collection getCollection ( $db = null ) | ||
|---|---|---|
| $db | yii\mongodb\Connection |
Подключение к Mongo. |
| return | yii\mongodb\file\Collection |
Экземпляр коллекции. |
init() public метод
Инициализирует объект.
Этот метод вызывается в конце конструктора. Стандартная реализация вызовет событие EVENT_INIT. Если вы переопределяете этот метод, убедитесь, что вы вызываете родительскую реализацию в конце, чтобы гарантировать срабатывание события.
| public void init ( ) |
|---|
one() public метод
Выполняет запрос и возвращает единственную строку результата.
| public yii\mongodb\file\ActiveRecord|массив|null one ( $db = null ) | ||
|---|---|---|
| $db | yii\mongodb\Connection |
Подключение к Mongo, используемое для выполнения запроса. Если null, используется подключение к MongoDB, возвращаемое $modelClass. |
| return | yii\mongodb\file\ActiveRecord|массив|null |
Единственная строка результата запроса. В зависимости от настроек asArray(), результат запроса может быть массивом или объектом ActiveRecord. Будет возвращён null, если запрос ничего не вернул. |
populate() public метод
Преобразует сырые результаты запроса в формат, указанный этим запросом.
Этот метод используется внутренне для преобразования данных, извлечённых из MongoDB, в формат, требуемый этим запросом.
| public массив populate ( $rows ) | ||
|---|---|---|
| $rows | массив |
Сырой результат запроса из MongoDB |
| return | массив |
Преобразованный результат запроса |
Подробное описание событий
EVENT_INIT событие типа \yii\mongodb\file\Event
Событие, которое срабатывает при инициализации запроса с помощью init().
© 2008–2017 by Yii Software LLC
Licensed under the three clause BSD license.
http://www.yiiframework.com/doc-2.0/yii-mongodb-file-activequery.html