Класс yii\gii\generators\extension\Generator
| Наследование | yii\gii\generators\extension\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-gii/blob/master/generators/extension/Generator.php |
Этот генератор создаст необходимые файлы для расширения.
Публичные свойства
Публичные методы
| Метод | Описание | Определено в |
|---|---|---|
| __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\gii\generators\extension\Generator |
| attributes() | Возвращает список имён атрибутов. | yii\base\Model |
| autoCompleteData() | Возвращает список значений автодополнения. | yii\gii\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\gii\generators\extension\Generator |
| generateAttributeLabel() | Генерирует удобочитаемую метку атрибута на основе заданного имени атрибута. | yii\base\Model |
| generateString() | Генерирует строку в зависимости от свойства enableI18N | yii\gii\Generator |
| getActiveValidators() | Возвращает валидаторы, применимые к текущему $scenario. | 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\gii\generators\extension\Generator | |
| getErrors() | Возвращает ошибки для всех атрибутов или одного атрибута. | yii\base\Model |
| getFirstError() | Возвращает первую ошибку указанного атрибута. | yii\base\Model |
| getFirstErrors() | Возвращает первую ошибку каждого атрибута в модели. | yii\base\Model |
| getIterator() | Возвращает итератор для обхода атрибутов в модели. | yii\base\Model |
| getKeywordsArrayJson() | yii\gii\generators\extension\Generator | |
| getName() | yii\gii\generators\extension\Generator | |
| getOutputPath() | yii\gii\generators\extension\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\gii\generators\extension\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 |
| optsLicense() | yii\gii\generators\extension\Generator | |
| optsType() | yii\gii\generators\extension\Generator | |
| render() | Генерирует код с использованием указанной шаблона и параметров. | yii\gii\Generator |
| requiredTemplates() | Возвращает список файлов шаблонов кода, которые требуются. | yii\gii\generators\extension\Generator |
| rules() | Возвращает правила валидации для атрибутов. | yii\gii\generators\extension\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\gii\generators\extension\Generator |
| successMessage() | Возвращает сообщение, которое будет отображено при успешном сохранении сгенерированного кода. | yii\gii\generators\extension\Generator |
| toArray() | Преобразует модель в массив. | yii\base\ArrayableTrait |
| trigger() | Вызывает событие. | yii\base\Component |
| validate() | Выполняет валидацию данных. | yii\base\Model |
| validateClass() | Встроенная валидация, проверяющая, ссылается ли значение атрибута на существующее имя класса. | yii\gii\Generator |
| validateMessageCategory() | Проверяет, не пуста ли категория сообщений при включённом I18N. | yii\gii\Generator |
| validateMultiple() | Валидирует несколько моделей. | yii\base\Model |
| validateNewClass() | Встроенная валидация, проверяющая, является ли значение атрибута допустимым именем класса с пространством имён. | yii\gii\Generator |
| validateTemplate() | Валидирует выбор шаблона. | yii\gii\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 |
Подробное описание свойств
$authorEmail открытое свойство
public $authorEmail = null $authorName открытое свойство
public $authorName = null $description открытое только для чтения свойство
public string getDescription ( )
$keywords открытое свойство
public $keywords = "yii2,extension" $keywordsArrayJson открытое только для чтения свойство
Массив с заданными ключевыми словами, закодированный в JSON.
public string getKeywordsArrayJson ( )
$license открытое свойство
public $license = null $name открытое только для чтения свойство
Имя генератора кода.
public string getName ( )
$namespace открытое свойство
public $namespace = null $outputPath открытое только для чтения свойство
public boolean getOutputPath ( )
$packageName открытое свойство
public $packageName = "yii2-" $title открытое свойство
public $title = null $type открытое свойство
public $type = "yii2-extension" $vendorName открытое свойство
public $vendorName = null Подробное описание методов
attributeLabels() public method
Возвращает метки атрибутов.
Метки атрибутов в основном используются для отображения. Например, при заданном атрибуте firstName, мы можем объявить метку First Name, которая более удобна для пользователя и может быть отображена конечным пользователям.
По умолчанию метка атрибута генерируется с помощью generateAttributeLabel(). Этот метод позволяет явно указать метки атрибутов.
Обратите внимание, для наследования меток, определённых в родительском классе, дочерний класс должен объединить родительские метки с дочерними, используя функции, такие как array_merge().
| public array attributeLabels ( ) | ||
|---|---|---|
| return | array |
Метки атрибутов (имя => метка) |
generate() public method
Генерирует код на основе текущего пользовательского ввода и указанных файлов шаблонов кода.
Это основной метод, который должны реализовывать дочерние классы. Обратитесь к yii\gii\generators\controller\Generator::generate() в качестве примера реализации этого метода.
| public yii\gii\CodeFile[] generate ( ) | ||
|---|---|---|
| return | yii\gii\CodeFile[] |
Список файлов кода, которые должны быть созданы. |
getDescription() public method
| public string getDescription ( ) | ||
|---|---|---|
| return | string |
Подробное описание генератора. |
getKeywordsArrayJson() public method
| public string getKeywordsArrayJson ( ) | ||
|---|---|---|
| return | string |
Массив ключевых слов, закодированный в формате JSON. |
getName() public method
| public string getName ( ) | ||
|---|---|---|
| return | string |
Имя генератора кода. |
getOutputPath() public method
| public boolean getOutputPath ( ) | ||
|---|---|---|
| return | boolean |
Директория, содержащая класс модуля. |
hints() public method
Возвращает список сообщений подсказок.
Ключи массива — имена атрибутов, а значения — соответствующие сообщения подсказок. Сообщения подсказок будут отображаться конечным пользователям при заполнении формы генератора.
| public array hints ( ) | ||
|---|---|---|
| return | array |
Список сообщений подсказок. |
optsLicense() public method
| public array optsLicense ( ) | ||
|---|---|---|
| return | array |
Параметры для выпадающего списка лицензии. |
optsType() public method
| public array optsType ( ) | ||
|---|---|---|
| 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\gii\generators\extension\Validator, или методом класса модели (так называемый встроенный валидатор), у которого есть следующий сигнатура:
// $params refers to validation parameters given in the rule function validatorName($attribute, $params)
В приведенном выше $attribute относится к атрибуту, который в данный момент проверяется, а $params содержит массив параметров конфигурации валидатора, таких как max в случае валидатора string. Значение атрибута, который в данный момент проверяется, можно получить как $this->$attribute. Обратите внимание на $ перед attribute; это принимает значение переменной $attribute и использует его как имя свойства для доступа.
Yii также предоставляет набор \yii\gii\generators\extension\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 |
Список «прикреплённых» атрибутов. |
successMessage() public method
Возвращает сообщение, отображаемое при успешном сохранении сгенерированного кода.
Дочерние классы могут переопределить этот метод для настройки сообщения.
| public string successMessage ( ) | ||
|---|---|---|
| return | string |
Сообщение, отображаемое при успешном сохранении сгенерированного кода. |
© 2008–2017 by Yii Software LLC
Licensed under the three clause BSD license.
http://www.yiiframework.com/doc-2.0/yii-gii-generators-extension-generator.html