Абстрактный класс yii\mongodb\Migration
| Наследование | yii\mongodb\Migration » yii\base\Component » yii\base\Object |
|---|---|
| Реализует | yii\base\Configurable, yii\db\MigrationInterface |
| Доступно с версии | 2.0 |
| Исходный код | https://github.com/yiisoft/yii2-mongodb/blob/master/Migration.php |
Migration — базовый класс для представления миграции MongoDB.
Каждый дочерний класс Migration представляет отдельную миграцию MongoDB, которая идентифицируется по имени дочернего класса.
В каждой миграции метод up() должен быть переопределён для включения логики «обновления» базы данных; в то время как метод down() — для логики «отката».
Миграции предоставляют набор удобных методов для управления данными и структурой MongoDB. Например, метод createIndex() может использоваться для создания индекса коллекции. По сравнению с аналогичными методами в yii\mongodb\Collection, эти методы отображают дополнительную информацию, показывающую параметры метода и время выполнения, что может быть полезно при применении миграций.
Общедоступные свойства
| Свойство | Тип | Описание | Определено в |
|---|---|---|---|
| $behaviors | yii\base\Behavior[] | Список прикрепленных к этому компоненту поведений | yii\base\Component |
| $db | yii\mongodb\Connection|array|string | Объект подключения к MongoDB или идентификатор компонента приложения подключения к MongoDB, с которым должна работать эта миграция. | yii\mongodb\Migration |
Общедоступные методы
| Метод | Описание | Определено в |
|---|---|---|
| __call() | Вызывает именованный метод, который не является методом класса. | yii\base\Component |
| __clone() | Этот метод вызывается после создания объекта путем клонирования существующего. | yii\base\Component |
| __construct() | Конструктор. | yii\base\Object |
| __get() | Возвращает значение свойства компонента. | yii\base\Component |
| __isset() | Проверяет, установлено ли свойство, т.е. определено и не равно null. | yii\base\Component |
| __set() | Устанавливает значение свойства компонента. | yii\base\Component |
| __unset() | Устанавливает свойство компонента в null. | yii\base\Component |
| attachBehavior() | Прикрепляет поведение к этому компоненту. | yii\base\Component |
| attachBehaviors() | Прикрепляет список поведений к компоненту. | yii\base\Component |
| batchInsert() | Вставляет несколько новых строк в коллекцию. | yii\mongodb\Migration |
| behaviors() | Возвращает список поведений, которые должен использовать этот компонент. | yii\base\Component |
| canGetProperty() | Возвращает значение, указывающее, можно ли считать свойство. | yii\base\Component |
| canSetProperty() | Возвращает значение, указывающее, можно ли установить свойство. | yii\base\Component |
| className() | Возвращает полное имя этого класса. | yii\base\Object |
| createCollection() | Создает новую коллекцию с указанными параметрами. | yii\mongodb\Migration |
| createIndex() | Создает индекс в коллекции и указанных полях. | yii\mongodb\Migration |
| createIndexes() | Создает индексы в коллекции. | yii\mongodb\Migration |
| detachBehavior() | Отсоединяет поведение от компонента. | yii\base\Component |
| detachBehaviors() | Отсоединяет все поведения от компонента. | yii\base\Component |
| down() | Этот метод содержит логику, которая должна выполняться при удалении этой миграции. | yii\db\MigrationInterface |
| dropAllIndexes() | Удаляет все индексы для указанной коллекции. | yii\mongodb\Migration |
| dropCollection() | Удаляет существующую коллекцию. | yii\mongodb\Migration |
| dropIndex() | Удаляет индексы для указанного(ых) столбца(ов). | yii\mongodb\Migration |
| dropIndexes() | Удаляет индексы коллекции по имени. | yii\mongodb\Migration |
| ensureBehaviors() | Убеждается, что поведения, объявленные в behaviors(), прикреплены к этому компоненту. | yii\base\Component |
| getBehavior() | Возвращает объект именованного поведения. | yii\base\Component |
| getBehaviors() | Возвращает все прикрепленные к этому компоненту поведения. | yii\base\Component |
| hasEventHandlers() | Возвращает значение, указывающее, есть ли какой-либо обработчик, прикрепленный к указанному событию. | yii\base\Component |
| hasMethod() | Возвращает значение, указывающее, определен ли метод. | yii\base\Component |
| hasProperty() | Возвращает значение, указывающее, определено ли свойство для этого компонента. | yii\base\Component |
| init() | Инициализирует миграцию. | yii\mongodb\Migration |
| insert() | Вставляет новые данные в коллекцию. | yii\mongodb\Migration |
| off() | Отсоединяет существующий обработчик событий от этого компонента. | yii\base\Component |
| on() | Прикрепляет обработчик событий к событию. | yii\base\Component |
| remove() | Удаляет данные из коллекции. | yii\mongodb\Migration |
| save() | Обновляет существующие данные базы данных, в противном случае вставляет эти данные | yii\mongodb\Migration |
| trigger() | Вызывает событие. | yii\base\Component |
| up() | Этот метод содержит логику, которая должна выполняться при применении этой миграции. | yii\db\MigrationInterface |
| update() | Обновляет строки, соответствующие заданным критериям, заданными данными. | yii\mongodb\Migration |
Защищенные методы
| Метод | Описание | Определено в |
|---|---|---|
| beginProfile() | Помечает начало блока кода для профилирования. | yii\mongodb\Migration |
| composeCollectionLogName() | Составляет строку, представляющую имя коллекции. | yii\mongodb\Migration |
| endProfile() | Помечает конец блока кода для профилирования. | yii\mongodb\Migration |
| log() | Записывает входящее сообщение. | yii\mongodb\Migration |
Подробное описание свойств
$db общедоступное свойство
Объект подключения к MongoDB или идентификатор компонента приложения для подключения к MongoDB, с которым должна работать эта миграция. Начиная с версии 2.0.2, это также может быть массив конфигурации для создания объекта.
public yii\mongodb\Connection|array|string $db = 'mongodb'
Подробное описание методов
batchInsert() public method
Вставка нескольких новых строк в коллекцию.
| public array batchInsert ( $collection, $rows, $options = [] ) | ||
|---|---|---|
| $collection | array|string |
Имя коллекции. |
| $rows | array |
Массив массивов или объектов для вставки. |
| $options | array |
Список опций в формате: имяОпции => значениеОпции. |
| return | array |
Вставленные данные, каждая строка будет иметь ключ "_id". |
beginProfile() protected method (available since version 2.1.1)
Помечает начало блока кода для профилирования.
| protected void beginProfile ( $token ) | ||
|---|---|---|
| $token | string |
Токен для блока кода. |
composeCollectionLogName() protected method
Формирует строку, представляющую имя коллекции.
| protected string composeCollectionLogName ( $collection ) | ||
|---|---|---|
| $collection | array|string |
Имя коллекции. |
| return | string |
Имя коллекции. |
createCollection() public method
Создаёт новую коллекцию с указанными опциями.
| public void createCollection ( $collection, $options = [] ) | ||
|---|---|---|
| $collection | string|array |
Имя коллекции |
| $options | array |
Опции коллекции в формате: "имя" => "значение" |
createIndex() public method
Создаёт индекс в коллекции по указанным полям.
| public void createIndex ( $collection, $columns, $options = [] ) | ||
|---|---|---|
| $collection | string|array |
Имя коллекции |
| $columns | array|string |
Имя столбца или список имён столбцов. |
| $options | array |
Список опций в формате: имяОпции => значениеОпции. |
createIndexes() public method (available since version 2.1)
Создаёт индексы в коллекции.
| public void createIndexes ( $collection, $indexes ) | ||
|---|---|---|
| $collection | string|array |
Имя коллекции |
| $indexes | array |
Спецификации индексов. |
dropAllIndexes() public method
Удаляет все индексы для указанной коллекции.
| public void dropAllIndexes ( $collection ) | ||
|---|---|---|
| $collection | string|array |
Имя коллекции. |
dropCollection() public method
Удаляет существующую коллекцию.
| public void dropCollection ( $collection ) | ||
|---|---|---|
| $collection | string|array |
Имя коллекции |
dropIndex() public method
Удаляет индексы для указанного(ых) столбца(ов).
| public void dropIndex ( $collection, $columns ) | ||
|---|---|---|
| $collection | string|array |
Имя коллекции |
| $columns | string|array |
Имя столбца или список имён столбцов. |
dropIndexes() public method (available since version 2.1)
Удаляет индексы коллекции по имени.
| public void dropIndexes ( $collection, $indexes ) | ||
|---|---|---|
| $collection | string|array |
Имя коллекции |
| $indexes | string |
Подстановочный символ для имени индексов, которые нужно удалить. |
endProfile() protected method (available since version 2.1.1)
Помечает конец блока кода для профилирования.
| protected void endProfile ( $token ) | ||
|---|---|---|
| $token | string |
Токен для блока кода. |
init() public method
Инициализирует миграцию.
Этот метод установит $db в компонент приложения 'db', если он равен null.
| public void init ( ) |
|---|
insert() public method
Вставляет новые данные в коллекцию.
| public \MongoDB\BSON\ObjectID insert ( $collection, $data, $options = [] ) | ||
|---|---|---|
| $collection | array|string |
Имя коллекции. |
| $data | array|object |
Данные для вставки. |
| $options | array |
Список опций в формате: имяОпции => значениеОпции. |
| return | \MongoDB\BSON\ObjectID |
Новый экземпляр идентификатора записи. |
log() protected method (available since version 2.1.1)
Записывает входящее сообщение.
По умолчанию этот метод отправляет сообщение в 'stdout'.
| protected void log ( $string ) | ||
|---|---|---|
| $string | string |
Сообщение для записи. |
remove() public method
Удаляет данные из коллекции.
| public integer|boolean remove ( $collection, $condition = [], $options = [] ) | ||
|---|---|---|
| $collection | array|string |
Имя коллекции. |
| $condition | array |
Описание удаляемых записей. |
| $options | array |
Список опций в формате: имяОпции => значениеОпции. |
| return | integer|boolean |
Число обновлённых документов или успешность операции. |
save() public method
Обновляет существующие данные базы данных, иначе вставляет эти данные.
| public \MongoDB\BSON\ObjectID сохранить ( $collection, $data, $options = [] ) | ||
|---|---|---|
| $collection | массив|строка |
Имя коллекции. |
| $data | массив|объект |
Данные для обновления/вставки. |
| $options | массив |
Список параметров в формате: имяПараметра => значениеПараметра. |
| return | \MongoDB\BSON\ObjectID |
Экземпляр id обновленного/нового записи. |
обновить() public метод
Обновляет строки, соответствующие заданным критериям, с помощью заданных данных.
Примечание: для режима "multiple" Mongo требует явного указания стратегии "$set" или "$inc" для "newData". Если стратегия не указана, будет использована "$set".
| public целое число|булево обновить ( $collection, $condition, $newData, $options = [] ) | ||
|---|---|---|
| $collection | массив|строка |
Имя коллекции. |
| $condition | массив |
Описание объектов для обновления. |
| $newData | массив |
Объект, используемый для обновления соответствующих записей. |
| $options | массив |
Список параметров в формате: имяПараметра => значениеПараметра. |
| return | целое число|булево |
Количество обновленных документов или успешность операции. |
© 2008–2017 by Yii Software LLC
Licensed under the three clause BSD license.
http://www.yiiframework.com/doc-2.0/yii-mongodb-migration.html