Spec-Zone.ru › Yii 2.0

Класс 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

Общедоступные свойства

Свойство Тип Описание Определено в
$activeValidators yii\validators\Validator[] Валидаторы, применимые к текущему $scenario. yii\base\Model
$attributes массив Значения атрибутов (имя => значение). yii\base\Model
$baseControllerClass yii\gii\generators\crud\Generator
$behaviors yii\base\Behavior[] Список присоединенных к этому компоненту поведений yii\base\Component
$columnNames массив Имена столбцов модели yii\gii\generators\crud\Generator
$controllerClass yii\gii\generators\crud\Generator
$controllerID строка Идентификатор контроллера (без префикса идентификатора модуля) yii\gii\generators\crud\Generator
$description строка Подробное описание генератора. yii\gii\generators\crud\Generator
$enableI18N логическое значение Будет ли использоваться Yii::t() или обычные строки для генерации строк. yii\gii\Generator
$enablePjax логическое значение Оборачивать виджет GridView или ListView виджетом yii\widgets\Pjax yii\gii\generators\crud\Generator
$errors массив Ошибки для всех атрибутов или указанного атрибута. yii\base\Model
$firstErrors массив Первые ошибки. yii\base\Model
$indexWidgetType yii\gii\generators\crud\Generator
$iterator ArrayIterator Итератор для обхода элементов в списке. yii\base\Model
$messageCategory строка Категория сообщений, используемая Yii::t() при $enableI18N является true. yii\gii\Generator
$modelClass yii\gii\generators\crud\Generator
$name строка Имя генератора кода yii\gii\generators\crud\Generator
$nameAttribute yii\gii\generators\crud\Generator
$scenario строка Сценарий, в котором находится эта модель. yii\base\Model
$searchAttributes массив Атрибуты для поиска yii\gii\generators\crud\Generator
$searchModelClass yii\gii\generators\crud\Generator
$stickyDataFile строка Путь к файлу, хранящему значения вязких атрибутов. yii\gii\Generator
$tableSchema логическое значение|yii\db\TableSchema yii\gii\generators\crud\Generator
$template строка Имя шаблона кода, выбранного пользователем. yii\gii\Generator
$templatePath строка Корневой путь к шаблонам файлов, которые в настоящее время используются. yii\gii\Generator
$templates массив Список доступных шаблонов кода. yii\gii\Generator
$validators ArrayObject|yii\validators\Validator[] Все валидаторы, объявленные в модели. yii\base\Model
$viewPath yii\gii\generators\crud\Generator

Общедоступные методы

Метод Описание Определено в
__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

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API