Класс yii\mongodb\gii\model\Generator
| Наследование | yii\mongodb\gii\model\Generator » yii\gii\Generator » yii\base\Model » yii\base\Component » yii\base\Object |
|---|---|
| Реализует | ArrayAccess, IteratorAggregate, yii\base\Arrayable, yii\base\Configurable |
| Использует Трейты | yii\base\ArrayableTrait |
| Доступен с версии | 2.0 |
| Исходный код | https://github.com/yiisoft/yii2-mongodb/blob/master/gii/model/Generator.php |
Этот генератор сгенерирует класс ActiveRecord для указанной коллекции MongoDB.
Публичные свойства
Публичные методы
| Метод | Описание | Определено в |
|---|---|---|
| __call() | Вызывает метод с заданным именем, который не является методом класса. | yii\base\Object |
| __clone() | Этот метод вызывается после того, как объект был создан путём клонирования существующего. | yii\base\Component |
| __construct() | Конструктор. | yii\base\Object |
| __get() | Возвращает значение свойства объекта. | yii\base\Object |
| __isset() | Проверяет, установлено ли свойство, т.е. определено и не равно null. | yii\base\Object |
| __set() | Устанавливает значение свойства объекта. | yii\base\Object |
| __unset() | Устанавливает свойство объекта в значение null. | yii\base\Object |
| activeAttributes() | Возвращает имена атрибутов, которые подлежат валидации в текущем сценарии. | yii\base\Model |
| addError() | Добавляет новую ошибку к указанному атрибуту. | yii\base\Model |
| addErrors() | Добавляет список ошибок. | yii\base\Model |
| afterValidate() | Этот метод вызывается после завершения валидации. | yii\base\Model |
| attachBehavior() | Присоединяет поведение к компоненту. | yii\base\Component |
| attachBehaviors() | Присоединяет список поведений к компоненту. | yii\base\Component |
| attributeHints() | Возвращает подсказки к атрибутам. | yii\base\Model |
| attributeLabels() | Возвращает метки атрибутов. | yii\mongodb\gii\model\Generator |
| attributes() | Возвращает список имён атрибутов. | yii\base\Model |
| autoCompleteData() | Возвращает список значений автозаполнения. | yii\mongodb\gii\model\Generator |
| beforeValidate() | Этот метод вызывается перед началом валидации. | yii\base\Model |
| behaviors() | Возвращает список поведений, по которым должен вести себя компонент. | yii\base\Component |
| canGetProperty() | Возвращает значение, указывающее, можно ли считать свойство. | yii\base\Object |
| canSetProperty() | Возвращает значение, указывающее, можно ли установить свойство. | yii\base\Object |
| className() | Возвращает полное имя этого класса. | yii\base\Object |
| clearErrors() | Удаляет ошибки для всех атрибутов или одного атрибута. | yii\base\Model |
| createValidators() | Создаёт объекты валидаторов на основе правил валидации, указанных в rules(). | yii\base\Model |
| defaultTemplate() | Возвращает корневой путь к файлам шаблонов по умолчанию. | yii\gii\Generator |
| detachBehavior() | Отсоединяет поведение от компонента. | yii\base\Component |
| detachBehaviors() | Отсоединяет все поведения от компонента. | yii\base\Component |
| ensureBehaviors() | Убеждается, что поведения, объявленные в behaviors(), присоединены к этому компоненту. | yii\base\Component |
| extraFields() | Возвращает список полей, которые можно расширить и вернуть методом toArray(). | yii\base\ArrayableTrait |
| fields() | Возвращает список полей, которые по умолчанию должны возвращаться методом toArray(), когда не указаны конкретные поля. | yii\base\ArrayableTrait |
| formName() | Возвращает имя формы, которое должен использовать этот класс модели. | yii\base\Model |
| formView() | Возвращает файл представления для формы ввода генератора. | yii\gii\Generator |
| generate() | Генерирует код на основе текущего пользовательского ввода и указанных файлов шаблонов. | yii\mongodb\gii\model\Generator |
| generateAttributeLabel() | Генерирует понятную пользователю метку атрибута на основе данного имени атрибута. | yii\base\Model |
| generateLabels() | Генерирует метки атрибутов для указанного списка атрибутов. | yii\mongodb\gii\model\Generator |
| generateRules() | Генерирует правила валидации для указанной коллекции. | yii\mongodb\gii\model\Generator |
| generateString() | Генерирует строку в зависимости от свойства enableI18N. | yii\gii\Generator |
| getActiveValidators() | Возвращает валидаторы, применимые к текущему $сценарий. | yii\base\Model |
| getAttributeHint() | Возвращает текстовую подсказку для указанного атрибута. | yii\base\Model |
| getAttributeLabel() | Возвращает текстовую метку для указанного атрибута. | yii\base\Model |
| getAttributes() | Возвращает значения атрибутов. | yii\base\Model |
| getBehavior() | Возвращает объект поведения с заданным именем. | yii\base\Component |
| getBehaviors() | Возвращает все присоединённые к этому компоненту поведения. | yii\base\Component |
| getDescription() | yii\mongodb\gii\model\Generator | |
| getErrors() | Возвращает ошибки для всех атрибутов или одного атрибута. | yii\base\Model |
| getFirstError() | Возвращает первую ошибку указанного атрибута. | yii\base\Model |
| getFirstErrors() | Возвращает первую ошибку каждого атрибута в модели. | yii\base\Model |
| getIterator() | Возвращает итератор для обхода атрибутов в модели. | yii\base\Model |
| getName() | yii\mongodb\gii\model\Generator | |
| getScenario() | Возвращает сценарий, в котором используется эта модель. | yii\base\Model |
| getStickyDataFile() | yii\gii\Generator | |
| getTemplatePath() | yii\gii\Generator | |
| getValidators() | Возвращает все валидаторы, объявленные в rules(). | yii\base\Model |
| hasErrors() | Возвращает значение, указывающее, есть ли какие-либо ошибки валидации. | yii\base\Model |
| hasEventHandlers() | Возвращает значение, указывающее, есть ли обработчик, прикрепленный к указанному событию. | yii\base\Component |
| hasMethod() | Возвращает значение, указывающее, определен ли метод. | yii\base\Object |
| hasProperty() | Возвращает значение, указывающее, определена ли свойство. | yii\base\Object |
| hints() | Возвращает список сообщений подсказок. | yii\mongodb\gii\model\Generator |
| init() | Инициализирует объект. | yii\gii\Generator |
| isAttributeActive() | Возвращает значение, указывающее, является ли атрибут активным в текущем сценарии. | yii\base\Model |
| isAttributeRequired() | Возвращает значение, указывающее, является ли атрибут обязательным. | yii\base\Model |
| isAttributeSafe() | Возвращает значение, указывающее, является ли атрибут безопасным для массовых присваиваний. | yii\base\Model |
| isReservedKeyword() | yii\gii\Generator | |
| load() | Заполняет модель данными ввода. | yii\base\Model |
| loadMultiple() | Заполняет набор моделей данными от пользователя. | yii\base\Model |
| loadStickyAttributes() | Загружает вязкие атрибуты из внутреннего файла и заполняет ими генератор. | yii\gii\Generator |
| off() | Отсоединяет существующий обработчик событий от этого компонента. | yii\base\Component |
| offsetExists() | Возвращает, существует ли элемент по указанному смещению. | yii\base\Model |
| offsetGet() | Возвращает элемент по указанному смещению. | yii\base\Model |
| offsetSet() | Устанавливает элемент по указанному смещению. | yii\base\Model |
| offsetUnset() | Устанавливает значение элемента по указанному смещению в null. | yii\base\Model |
| on() | Присоединяет обработчик событий к событию. | yii\base\Component |
| onUnsafeAttribute() | Этот метод вызывается при массовом присваивании небезопасного атрибута. | yii\base\Model |
| render() | Генерирует код с помощью указанной шаблона кода и параметров. | yii\gii\Generator |
| requiredTemplates() | Возвращает список файлов шаблонов кода, которые необходимы. | yii\mongodb\gii\model\Generator |
| rules() | Возвращает правила валидации для атрибутов. | yii\mongodb\gii\model\Generator |
| safeAttributes() | Возвращает имена атрибутов, которые безопасны для массового присваивания в текущем сценарии. | yii\base\Model |
| save() | Сохраняет сгенерированный код в файлы. | yii\gii\Generator |
| saveStickyAttributes() | Сохраняет вязкие атрибуты во внутренний файл. | yii\gii\Generator |
| scenarios() | Возвращает список сценариев и соответствующих активных атрибутов. | yii\base\Model |
| setAttributes() | Устанавливает значения атрибутов массовым способом. | yii\base\Model |
| setScenario() | Устанавливает сценарий для модели. | yii\base\Model |
| stickyAttributes() | Возвращает список вязких атрибутов. | yii\mongodb\gii\model\Generator |
| successMessage() | Возвращает сообщение, которое должно отображаться при успешном сохранении нового сгенерированного кода. | yii\gii\Generator |
| toArray() | Преобразует модель в массив. | yii\base\ArrayableTrait |
| trigger() | Вызывает событие. | yii\base\Component |
| validate() | Выполняет проверку данных. | yii\base\Model |
| validateClass() | Встроенная проверка, которая проверяет, ссылается ли значение атрибута на имя существующего класса. | yii\gii\Generator |
| validateCollectionName() | Проверяет атрибут $collectionName. | yii\mongodb\gii\model\Generator |
| validateDb() | Проверяет атрибут $db. | yii\mongodb\gii\model\Generator |
| validateMessageCategory() | Проверяет, не пуста ли категория сообщений при включенном I18N. | yii\gii\Generator |
| validateModelClass() | Проверяет атрибут $modelClass. | yii\mongodb\gii\model\Generator |
| validateMultiple() | Проверяет несколько моделей. | yii\base\Model |
| validateNamespace() | Проверяет атрибут $ns. | yii\mongodb\gii\model\Generator |
| validateNewClass() | Встроенная проверка, которая проверяет, является ли значение атрибута допустимым именем именованного класса. | yii\gii\Generator |
| validateTemplate() | Проверяет выбор шаблона. | yii\gii\Generator |
Защищенные методы
| Метод | Описание | Определено в |
|---|---|---|
| generateClassName() | Генерирует имя класса по заданному имени коллекции. | yii\mongodb\gii\model\Generator |
| getDbConnection() | yii\mongodb\gii\model\Generator | |
| resolveFields() | Определяет, какие поля могут быть возвращены методом toArray(). | yii\base\ArrayableTrait |
События
| Событие | Тип | Описание | Определено в |
|---|---|---|---|
| EVENT_AFTER_VALIDATE | yii\base\Event | Событие, генерируемое в конце метода validate(). | yii\base\Model |
| EVENT_BEFORE_VALIDATE | yii\base\ModelEvent | Событие, генерируемое в начале метода validate(). | yii\base\Model |
Константы
| Константа | Значение | Описание | Определено в |
|---|---|---|---|
| SCENARIO_DEFAULT | 'default' | Имя сценария по умолчанию. | yii\base\Model |
Подробности свойств
$attributeList общедоступное свойство
public $attributeList = null $baseClass общедоступное свойство
public $baseClass = 'yii\mongodb\ActiveRecord' $collectionName общедоступное свойство
public $collectionName = null $databaseName общедоступное свойство
public $databaseName = null $db общедоступное свойство
public $db = 'mongodb' $description общедоступное только для чтения свойство
Подробное описание генератора.
public string getDescription ( )
$modelClass общедоступное свойство
public $modelClass = null $name общедоступное только для чтения свойство
Имя кодогенератора
public string getName ( )
$ns общедоступное свойство
public $ns = 'app\models' Подробности методов
attributeLabels() public method
Возвращает метки атрибутов.
Метки атрибутов в основном используются для отображения. Например, задан атрибут firstName, мы можем объявить метку First Name, которая более удобна для пользователя и может быть отображена конечным пользователям.
По умолчанию метка атрибута генерируется с помощью generateAttributeLabel(). Этот метод позволяет явно указать метки атрибутов.
Обратите внимание, что для наследования меток, определенных в родительском классе, дочерний класс должен объединить родительские метки с дочерними метками, используя функции, такие как array_merge().
| public array attributeLabels ( ) | ||
|---|---|---|
| return | array |
Метки атрибутов (имя => метка) |
autoCompleteData() public method
Возвращает список значений автозаполнения.
Ключи массива — имена атрибутов, а значения массива — соответствующие значения автозаполнения. Значения автозаполнения также могут быть вызываемыми типами, чтобы можно было отложить генерацию данных.
| public array autoCompleteData ( ) | ||
|---|---|---|
| return | array |
Список значений автозаполнения |
generate() public method
Генерирует код на основе текущего ввода пользователя и указанных файлов шаблонов кода.
Это основной метод, который должны реализовывать дочерние классы. Обратитесь к yii\gii\generators\controller\Generator::generate() в качестве примера реализации этого метода.
| public yii\gii\CodeFile[] generate ( ) | ||
|---|---|---|
| return | yii\gii\CodeFile[] |
Список файлов кода, которые необходимо создать. |
generateClassName() protected method
Генерирует имя класса из указанного имени коллекции.
| protected string generateClassName ( $collectionName ) | ||
|---|---|---|
| $collectionName | string |
Имя коллекции (которое может содержать префикс схемы) |
| return | string |
Сгенерированное имя класса |
generateLabels() public method
Генерирует метки атрибутов для указанного списка атрибутов.
| public array generateLabels ( $attributes ) | ||
|---|---|---|
| $attributes | array |
Список атрибутов |
| return | array |
Сгенерированные метки атрибутов (имя => метка) |
generateRules() public method
Генерирует правила валидации для указанной коллекции.
| public array generateRules ( $attributes ) | ||
|---|---|---|
| $attributes | array |
Список атрибутов |
| return | array |
Сгенерированные правила валидации |
getDbConnection() protected method
| protected yii\mongodb\Connection getDbConnection ( ) | ||
|---|---|---|
| return | yii\mongodb\Connection |
Подключение к БД, заданное параметром $db. |
getDescription() public method
| public string getDescription ( ) | ||
|---|---|---|
| return | string |
Подробное описание генератора. |
getName() public method
| public string getName ( ) | ||
|---|---|---|
| return | string |
Имя генератора кода |
hints() public method
Возвращает список сообщений подсказок.
Ключи массива — имена атрибутов, а значения массива — соответствующие сообщения подсказок. Сообщения подсказок будут отображаться конечным пользователям при заполнении формы генератора.
| public array hints ( ) | ||
|---|---|---|
| return | array |
Список сообщений подсказок |
requiredTemplates() public method
Возвращает список необходимых файлов шаблонов кода.
Производные классы обычно должны переопределять этот метод, если им требуется существование определенных файлов шаблонов.
| public array requiredTemplates ( ) | ||
|---|---|---|
| return | array |
Список необходимых файлов шаблонов кода. Они должны быть путями к файлам, относительными к $templatePath. |
rules() public method
Возвращает правила валидации для атрибутов.
Правила валидации используются методом validate() для проверки, являются ли значения атрибутов допустимыми. Дочерние классы могут переопределить этот метод, чтобы объявить разные правила валидации.
Каждое правило — массив со следующей структурой:
[
['attribute1', 'attribute2'],
'validator type',
'on' => ['scenario1', 'scenario2'],
//...other parameters...
]
где
- список атрибутов: обязательный, указывает массив атрибутов, подлежащих валидации, для отдельного атрибута можно передать строку;
- тип валидатора: обязательный, указывает используемый валидатор. Он может быть именем встроенного валидатора, именем метода класса модели, анонимной функцией или именем класса валидатора.
- on: необязательный, указывает массив сценариев, в которых правило валидации может быть применено. Если этот параметр не задан, правило будет применяться ко всем сценариям.
- дополнительные пары имя-значение могут быть указаны для инициализации соответствующих свойств валидатора. Обратитесь к API отдельных классов валидаторов для возможных свойств.
Валидатор может быть либо объектом класса, расширяющего \yii\mongodb\gii\model\Validator, либо методом класса модели (называемый встроенным валидатором), у которого есть следующий сигнатура:
// $params refers to validation parameters given in the rule function validatorName($attribute, $params)
В приведенном выше примере $attribute относится к атрибуту, который в данный момент валидируется, а $params содержит массив параметров конфигурации валидатора, таких как max в случае валидатора string. Значение атрибута, который в данный момент валидируется, можно получить как $this->$attribute. Обратите внимание на $ перед attribute; это берет значение переменной $attribute и использует его в качестве имени свойства для доступа.
Yii также предоставляет набор \yii\mongodb\gii\model\Validator::builtInValidators. Каждый из них имеет псевдоним, который можно использовать при указании правила валидации.
Ниже приведены некоторые примеры:
[
// built-in "required" validator
[['username', 'password'], 'required'],
// built-in "string" validator customized with "min" and "max" properties
['username', 'string', 'min' => 3, 'max' => 12],
// built-in "compare" validator that is used in "register" scenario only
['password', 'compare', 'compareAttribute' => 'password2', 'on' => 'register'],
// an inline validator defined via the "authenticate()" method in the model class
['password', 'authenticate', 'on' => 'login'],
// a validator of class "DateRangeValidator"
['dateRange', 'DateRangeValidator'],
];
Обратите внимание, что для наследования правил, определенных в родительском классе, дочерний класс должен объединить родительские правила с дочерними правилами, используя функции, такие как array_merge().
Дочерние классы должны переопределять этот метод следующим образом, чтобы включать родительские правила:
return array_merge(parent::rules(), [
...rules for the child class...
]);
| public array rules ( ) | ||
|---|---|---|
| return | array |
Правила валидации |
stickyAttributes() public method
Возвращает список вязких атрибутов.
Вязкий атрибут сохранит свое значение и инициализирует атрибут этим значением при перезапуске генератора.
| public array stickyAttributes ( ) | ||
|---|---|---|
| return | array |
Список вязких атрибутов |
validateCollectionName() public method
Проверяет атрибут $collectionName.
| public void validateCollectionName ( ) |
|---|
validateDb() public method
Проверяет атрибут $db.
| public void validateDb ( ) |
|---|
validateModelClass() public method
Проверяет атрибут $modelClass.
| public void validateModelClass ( ) |
|---|
validateNamespace() public method
Проверяет атрибут $ns.
| public void validateNamespace ( ) |
|---|
© 2008–2017 by Yii Software LLC
Licensed under the three clause BSD license.
http://www.yiiframework.com/doc-2.0/yii-mongodb-gii-model-generator.html