Класс yii\gii\generators\crud\Generator
| Наследование | yii\gii\generators\crud\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/crud/Generator.php |
Генерирует CRUD
Общедоступные свойства
Общедоступные методы
| Метод | Описание | Определено в |
|---|---|---|
| __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\crud\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\crud\Generator |
| generateActionParamComments() | Генерирует метки параметров для phpdoc. | yii\gii\generators\crud\Generator |
| generateActionParams() | Генерирует параметры действия. | yii\gii\generators\crud\Generator |
| generateActiveField() | Генерирует код для активного поля. | yii\gii\generators\crud\Generator |
| generateActiveSearchField() | Генерирует код для активного поля поиска. | yii\gii\generators\crud\Generator |
| generateAttributeLabel() | Генерирует понятную пользователю метку атрибута на основе имени атрибута. | yii\base\Model |
| generateColumnFormat() | Генерирует формат колонки. | yii\gii\generators\crud\Generator |
| generateSearchConditions() | Генерирует условия поиска. | yii\gii\generators\crud\Generator |
| generateSearchLabels() | Генерирует метки атрибутов для модели поиска. | yii\gii\generators\crud\Generator |
| generateSearchRules() | Генерирует правила валидации для модели поиска. | yii\gii\generators\crud\Generator |
| generateString() | Генерирует строку в зависимости от свойства enableI18N. | yii\gii\Generator |
| generateUrlParams() | Генерирует параметры URL. | yii\gii\generators\crud\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 |
| getColumnNames() | yii\gii\generators\crud\Generator | |
| getControllerID() | yii\gii\generators\crud\Generator | |
| getDescription() | yii\gii\generators\crud\Generator | |
| getErrors() | Возвращает ошибки для всех атрибутов или для отдельного атрибута. | yii\base\Model |
| getFirstError() | Возвращает первую ошибку указанного атрибута. | yii\base\Model |
| getFirstErrors() | Возвращает первую ошибку каждого атрибута в модели. | yii\base\Model |
| getIterator() | Возвращает итератор для обхода атрибутов модели. | yii\base\Model |
| getName() | yii\gii\generators\crud\Generator | |
| getNameAttribute() | yii\gii\generators\crud\Generator | |
| getScenario() | Возвращает сценарий, в котором используется эта модель. | yii\base\Model |
| getSearchAttributes() | yii\gii\generators\crud\Generator | |
| getStickyDataFile() | yii\gii\Generator | |
| getTableSchema() | Возвращает схему таблицы для текущего класса модели или false, если это не активная запись. | yii\gii\generators\crud\Generator |
| getTemplatePath() | yii\gii\Generator | |
| getValidators() | Возвращает все валидаторы, объявленные в rules(). | yii\base\Model |
| getViewPath() | yii\gii\generators\crud\Generator | |
| hasErrors() | Возвращает значение, указывающее, есть ли какие-либо ошибки валидации. | yii\base\Model |
| hasEventHandlers() | Возвращает значение, указывающее, есть ли какой-либо обработчик, присоединенный к указанному событию. | yii\base\Component |
| hasMethod() | Возвращает значение, указывающее, определен ли метод. | yii\base\Object |
| hasProperty() | Возвращает значение, указывающее, определена ли свойство. | yii\base\Object |
| hints() | Возвращает список сообщений подсказок. | yii\gii\generators\crud\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() | Загружает атрибуты sticky из внутреннего файла и заполняет ими генератор. | 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\gii\generators\crud\Generator |
| rules() | Возвращает правила валидации для атрибутов. | yii\gii\generators\crud\Generator |
| safeAttributes() | Возвращает имена атрибутов, которые безопасны для массового присваивания в текущем сценарии. | yii\base\Model |
| save() | Сохраняет сгенерированный код в файлы. | yii\gii\Generator |
| saveStickyAttributes() | Сохраняет атрибуты sticky во внутренний файл. | yii\gii\Generator |
| scenarios() | Возвращает список сценариев и соответствующих активных атрибутов. | yii\base\Model |
| setAttributes() | Устанавливает значения атрибутов массовым способом. | yii\base\Model |
| setScenario() | Устанавливает сценарий для модели. | yii\base\Model |
| stickyAttributes() | Возвращает список атрибутов sticky. | yii\gii\generators\crud\Generator |
| successMessage() | Возвращает сообщение, которое будет отображаться, когда успешно сохранен новый сгенерированный код. | yii\gii\Generator |
| toArray() | Преобразует модель в массив. | yii\base\ArrayableTrait |
| trigger() | Вызывает событие. | yii\base\Component |
| validate() | Выполняет проверку данных. | yii\base\Model |
| validateClass() | Встроенный валидатор, проверяющий, ссылается ли значение атрибута на существующее имя класса. | yii\gii\Generator |
| validateMessageCategory() | Проверяет, не пуста ли категория сообщений, если включена I18N. | yii\gii\Generator |
| validateModelClass() | Проверяет, является ли класс модели валидным. | yii\gii\generators\crud\Generator |
| validateMultiple() | Валидирует несколько моделей. | yii\base\Model |
| validateNewClass() | Встроенный валидатор, проверяющий, является ли значение атрибута валидным именем класса с пространством имён. | yii\gii\Generator |
| validateTemplate() | Валидирует выбор шаблона. | yii\gii\Generator |
Защищённые методы
| Метод | Описание | Определено в |
|---|---|---|
| getClassDbDriverName() | yii\gii\generators\crud\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 |
Подробности свойств
$baseControllerClass общедоступное свойство
public $baseControllerClass = 'yii\web\Controller' $columnNames общедоступное только для чтения свойство
Имена столбцов модели
public array getColumnNames ( )
$controllerClass общедоступное свойство
public $controllerClass = null $controllerID общедоступное только для чтения свойство
Идентификатор контроллера (без префикса модуля)
public string getControllerID ( )
$description общедоступное только для чтения свойство
Подробное описание генератора.
public string getDescription ( )
$enablePjax общедоступное свойство (доступно с версии 2.0.5)
Определяет, обернуть ли GridView или ListView виджеты виджетом yii\widgets\Pjax
public boolean $enablePjax = false
$indexWidgetType общедоступное свойство
public $indexWidgetType = 'grid' $modelClass общедоступное свойство
public $modelClass = null $name общедоступное только для чтения свойство
Имя генератора кода
public string getName ( )
$nameAttribute общедоступное только для чтения свойство
public void getNameAttribute ( )
$searchAttributes общедоступное только для чтения свойство
Атрибуты для поиска
public array getSearchAttributes ( )
$searchModelClass общедоступное свойство
public $searchModelClass = '' $tableSchema общедоступное только для чтения свойство
public boolean|yii\db\TableSchema getTableSchema ( )
$viewPath общедоступное только для чтения свойство
public string getViewPath ( )
Подробности методов
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[] |
Список файлов кода, которые необходимо создать. |
generateActionParamComments() public method
Генерирует теги параметров для phpdoc
| public array generateActionParamComments ( ) | ||
|---|---|---|
| return | array |
Теги параметров для phpdoc |
generateActionParams() public method
Генерирует параметры действия
| public string generateActionParams ( ) |
|---|
generateActiveField() public method
Генерирует код для активного поля
| public string generateActiveField ( $attribute ) | ||
|---|---|---|
| $attribute | string | |
generateActiveSearchField() public method
Генерирует код для поля активного поиска
| public string generateActiveSearchField ( $attribute ) | ||
|---|---|---|
| $attribute | string | |
generateColumnFormat() public method
Генерирует формат столбца
| public string generateColumnFormat ( $column ) | ||
|---|---|---|
| $column | yii\db\ColumnSchema | |
generateSearchConditions() public method
Генерирует условия поиска
| public array generateSearchConditions ( ) |
|---|
generateSearchLabels() public method
Генерирует метки атрибутов для модели поиска.
| public array generateSearchLabels ( ) | ||
|---|---|---|
| return | array |
Сгенерированные метки атрибутов (имя => метка) |
generateSearchRules() public method
Генерирует правила валидации для модели поиска.
| public array generateSearchRules ( ) | ||
|---|---|---|
| return | array |
Сгенерированные правила валидации |
generateUrlParams() public method
Генерирует параметры URL
| public string generateUrlParams ( ) |
|---|
getClassDbDriverName() protected method (доступен начиная с версии 2.0.6)
| protected string|null getClassDbDriverName ( ) | ||
|---|---|---|
| return | string|null |
Имя драйвера базы данных модели. Если база данных не является экземпляром \yii\db\Connection, возвращается null. |
getColumnNames() public method
| public array getColumnNames ( ) | ||
|---|---|---|
| return | array |
Имена столбцов модели |
getControllerID() public method
| public string getControllerID ( ) | ||
|---|---|---|
| return | string |
Идентификатор контроллера (без префикса идентификатора модуля) |
getDescription() public method
| public string getDescription ( ) | ||
|---|---|---|
| return | string |
Подробное описание генератора. |
getName() public method
| public string getName ( ) | ||
|---|---|---|
| return | string |
Имя генератора кода |
getNameAttribute() public method
| public void getNameAttribute ( ) |
|---|
getSearchAttributes() public method
| public array getSearchAttributes ( ) | ||
|---|---|---|
| return | array |
Атрибуты, используемые для поиска |
getTableSchema() public method
Возвращает схему таблицы для текущего класса модели или false, если это не активная запись.
| public boolean|yii\db\TableSchema getTableSchema ( ) |
|---|
getViewPath() public method
| public string getViewPath ( ) | ||
|---|---|---|
| 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\gii\generators\crud\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\crud\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 |
Список атрибутов с сохранением состояния |
validateModelClass() public method
Проверяет, является ли класс модели допустимым
| public void validateModelClass ( ) |
|---|
© 2008–2017 by Yii Software LLC
Licensed under the three clause BSD license.
http://www.yiiframework.com/doc-2.0/yii-gii-generators-crud-generator.html