Spec-Zone.ru › Yii 2.0

Класс yii\gii\generators\form\Generator

Все классы | Свойства | Методы | События | Константы
Наследование yii\gii\generators\form\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/form/Generator.php

Этот генератор сгенерирует файл действия представления на основе указанного класса модели.

Публичные свойства

Свойство Тип Описание Определено в
$activeValidators yii\validators\Validator[] Валидаторы, применимые к текущему $scenario. yii\base\Model
$attributes массив Значения атрибутов (имя => значение). yii\base\Model
$behaviors yii\base\Behavior[] Список поведений, прикрепленных к этому компоненту yii\base\Component
$description строка Подробное описание генератора. yii\gii\generators\form\Generator
$enableI18N булево Будет ли строки генерироваться с помощью Yii::t() или обычных строк. yii\gii\Generator
$errors массив Ошибки для всех атрибутов или указанного атрибута. yii\base\Model
$firstErrors массив Первые ошибки. yii\base\Model
$iterator ArrayIterator Итератор для обхода элементов в списке. yii\base\Model
$messageCategory строка Категория сообщений, используемая Yii::t() когда $enableI18N является true. yii\gii\Generator
$modelAttributes массив Список безопасных атрибутов $modelClass yii\gii\generators\form\Generator
$modelClass yii\gii\generators\form\Generator
$name строка Имя генератора кода yii\gii\generators\form\Generator
$scenario строка Сценарий, в котором находится эта модель. yii\base\Model
$scenarioName yii\gii\generators\form\Generator
$stickyDataFile строка Путь к файлу, в котором хранятся значения вязких атрибутов. yii\gii\Generator
$template строка Имя шаблона кода, выбранного пользователем. yii\gii\Generator
$templatePath строка Основной путь к файлам шаблонов, которые в настоящее время используются. yii\gii\Generator
$templates массив Список доступных шаблонов кода. yii\gii\Generator
$validators ArrayObject|yii\validators\Validator[] Все валидаторы, объявленные в модели. yii\base\Model
$viewName yii\gii\generators\form\Generator
$viewPath yii\gii\generators\form\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\form\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\form\Generator
generateAttributeLabel() Генерирует удобочитаемую метку атрибута на основе заданного имени атрибута. yii\base\Model
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\gii\generators\form\Generator
getErrors() Возвращает ошибки для всех атрибутов или одного атрибута. yii\base\Model
getFirstError() Возвращает первую ошибку указанного атрибута. yii\base\Model
getFirstErrors() Возвращает первую ошибку каждого атрибута в модели. yii\base\Model
getIterator() Возвращает итератор для обхода атрибутов в модели. yii\base\Model
getModelAttributes() yii\gii\generators\form\Generator
getName() yii\gii\generators\form\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\form\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\gii\generators\form\Generator
rules() Возвращает правила валидации для атрибутов. yii\gii\generators\form\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\form\Generator
successMessage() Возвращает сообщение, которое будет отображаться, когда новый сгенерированный код будет успешно сохранён. yii\gii\generators\form\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
validateViewPath() Проверяет $viewPath, чтобы убедиться, что это действительный путь или псевдоним пути и что он существует. yii\gii\generators\form\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

Подробности свойств

$description общедоступное только для чтения свойство

Подробное описание генератора.

public string getDescription ( )

$modelAttributes общедоступное только для чтения свойство

Список безопасных атрибутов $modelClass.

public array getModelAttributes ( )

$modelClass общедоступное свойство

public  $modelClass = null

$name общедоступное только для чтения свойство

Имя генератора кода.

public string getName ( )

$scenarioName общедоступное свойство

public  $scenarioName = null

$viewName общедоступное свойство

public  $viewName = null

$viewPath общедоступное свойство

public  $viewPath = '@app/views'

Подробное описание методов

attributeLabels() общедоступный метод

Возвращает метки атрибутов.

Метки атрибутов в основном используются для отображения. Например, для атрибута firstName, мы можем объявить более понятную для пользователя метку First Name.

По умолчанию метка атрибута генерируется с помощью generateAttributeLabel(). Этот метод позволяет явно указать метки атрибутов.

Обратите внимание, что для наследования меток, определённых в родительском классе, дочерний класс должен объединить родительские и дочерние метки с помощью функций, таких как array_merge().

public массив attributeLabels ( )
возвращает массив

Метки атрибутов (имя => метка)

generate() общедоступный метод

Генерирует код на основе текущего ввода пользователя и указанных шаблонов файлов кода.

Этот метод должен быть реализован дочерними классами. Обратитесь к yii\gii\generators\controller\Generator::generate() в качестве примера реализации этого метода.

public yii\gii\CodeFile[] generate ( )
возвращает yii\gii\CodeFile[]

Список файлов кода, которые должны быть созданы.

getDescription() общедоступный метод

public строка getDescription ( )
возвращает строка

Подробное описание генератора.

getModelAttributes() общедоступный метод

public массив getModelAttributes ( )
возвращает массив

Список безопасных атрибутов $modelClass.

getName() общедоступный метод

public строка getName ( )
возвращает строка

Имя генератора кода.

hints() общедоступный метод

Возвращает список сообщений подсказок.

Ключи массива — имена атрибутов, а значения — соответствующие сообщения подсказок. Сообщения подсказок будут отображаться конечным пользователям при заполнении формы для генератора.

public массив hints ( )
возвращает массив

Список сообщений подсказок

requiredTemplates() общедоступный метод

Возвращает список файлов шаблонов кода, которые необходимы.

Производные классы обычно должны переопределять этот метод, если им необходимо существование определенных файлов шаблонов.

public массив requiredTemplates ( )
возвращает массив

Список файлов шаблонов кода, которые необходимы. Они должны быть путями к файлам относительно $templatePath.

rules() общедоступный метод

Возвращает правила валидации для атрибутов.

Правила валидации используются методом validate() для проверки корректности значений атрибутов. Дочерние классы могут переопределить этот метод для объявления различных правил валидации.

Каждое правило представляет собой массив со следующей структурой:

[
    ['attribute1', 'attribute2'],
    'validator type',
    'on' => ['scenario1', 'scenario2'],
    //...other parameters...
]

где

  • список атрибутов: обязательный, задаёт атрибуты для проверки, для одного атрибута можно передать строку;
  • тип валидатора: обязательный, задаёт используемый валидатор. Он может быть именем встроенного валидатора, именем метода класса модели, анонимной функцией или именем класса валидатора.
  • on: необязательный, задаёт массив сценариев, в которых правило валидации может применяться. Если этот параметр не установлен, правило будет применяться ко всем сценариям.
  • дополнительные пары имя-значение могут быть указаны для инициализации соответствующих свойств валидатора. Обратитесь к API отдельных классов валидаторов для возможных свойств.

Валидатор может быть либо объектом класса, расширяющего \yii\gii\generators\form\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\form\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 массив rules ( )
возвращает массив

Правила валидации

stickyAttributes() общедоступный метод

Возвращает список «липких» атрибутов.

«Липкий» атрибут сохранит своё значение и инициализирует атрибут этим значением при повторном запуске генератора.

public массив stickyAttributes ( )
возвращает массив

Список «липких» атрибутов

successMessage() общедоступный метод

Возвращает сообщение, которое должно быть отображено при успешном сохранении сгенерированного кода.

Дочерние классы могут переопределить этот метод для настройки сообщения.

public строка successMessage ( )
возвращает строка

Сообщение, которое должно быть отображено при успешном сохранении сгенерированного кода.

validateViewPath() общедоступный метод

Проверяет $viewPath на то, является ли это корректным путём или псевдонимом пути и существует ли он.

public void validateViewPath ( )

© 2008–2017 by Yii Software LLC
Licensed under the three clause BSD license.
http://www.yiiframework.com/doc-2.0/yii-gii-generators-form-generator.html

Spec-Zone.ru

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