Spec-Zone.ru › Yii 2.0

Класс yii\sphinx\gii\model\Generator

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

Этот генератор создаст один или несколько классов ActiveRecord для указанного индекса Sphinx.

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

Свойство Тип Описание Определено в
$activeValidators yii\validators\Validator[] Вадидаторы, применимые к текущему $scenario. yii\base\Model
$attributes массив Значения атрибутов (имя => значение). yii\base\Model
$baseClass yii\sphinx\gii\model\Generator
$behaviors yii\base\Behavior[] Список присоединенных к этому компоненту поведений. yii\base\Component
$db yii\sphinx\gii\model\Generator
$description строка Подробное описание генератора. yii\sphinx\gii\model\Generator
$enableI18N булево Будет ли строки генерироваться с помощью Yii::t() или обычные строки. yii\gii\Generator
$errors массив Ошибки для всех атрибутов или указанного атрибута. yii\base\Model
$firstErrors массив Первые ошибки. yii\base\Model
$indexName yii\sphinx\gii\model\Generator
$iterator ArrayIterator Итератор для обхода элементов в списке. yii\base\Model
$messageCategory строка Категория сообщений, используемая Yii::t() когда $enableI18N это true. yii\gii\Generator
$modelClass yii\sphinx\gii\model\Generator
$name строка Имя генератора кода yii\sphinx\gii\model\Generator
$ns yii\sphinx\gii\model\Generator
$scenario строка Сценарий, в котором находится эта модель. yii\base\Model
$stickyDataFile строка Путь к файлу, хранящему значения атрибутов sticky. yii\gii\Generator
$template строка Имя шаблона кода, выбранного пользователем. yii\gii\Generator
$templatePath строка Корневой путь к шаблонам файлов, которые в настоящее время используются. yii\gii\Generator
$templates массив Список доступных шаблонов кода. yii\gii\Generator
$useIndexPrefix yii\sphinx\gii\model\Generator
$validators ArrayObject|yii\validators\Validator[] Все валидаторы, объявленные в модели. yii\base\Model

Публичные методы

Метод Описание Определено в
__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\sphinx\gii\model\Generator
attributes() Возвращает список имён атрибутов. yii\base\Model
autoCompleteData() Возвращает список значений автозаполнения. yii\sphinx\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\sphinx\gii\model\Generator
generateAttributeLabel() Генерирует удобочитаемую метку атрибута на основе имени атрибута. yii\base\Model
generateIndexName() Генерирует имя таблицы, учитывая префикс таблицы. yii\sphinx\gii\model\Generator
generateLabels() Генерирует метки атрибутов для указанной таблицы. yii\sphinx\gii\model\Generator
generateRules() Генерирует правила валидации для указанного индекса. yii\sphinx\gii\model\Generator
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\sphinx\gii\model\Generator
getErrors() Возвращает ошибки для всех атрибутов или одного атрибута. yii\base\Model
getFirstError() Возвращает первую ошибку указанного атрибута. yii\base\Model
getFirstErrors() Возвращает первую ошибку каждого атрибута в модели. yii\base\Model
getIterator() Возвращает итератор для обхода атрибутов в модели. yii\base\Model
getName() yii\sphinx\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\sphinx\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\sphinx\gii\model\Generator
rules() Возвращает правила валидации для атрибутов. yii\sphinx\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\sphinx\gii\model\Generator
successMessage() Возвращает сообщение, которое будет отображено, когда успешно сохранён новый сгенерированный код. yii\gii\Generator
toArray() Преобразует модель в массив. yii\base\ArrayableTrait
trigger() Вызывает событие. yii\base\Component
validate() Выполняет валидацию данных. yii\base\Model
validateClass() Встроенный валидатор, проверяющий, ссылается ли значение атрибута на существующее имя класса. yii\gii\Generator
validateDb() Проверяет атрибут $db. yii\sphinx\gii\model\Generator
validateIndexName() Проверяет атрибут $indexName. yii\sphinx\gii\model\Generator
validateMessageCategory() Проверяет, не пуста ли категория сообщений, когда включена I18N. yii\gii\Generator
validateModelClass() Проверяет атрибут $modelClass. yii\sphinx\gii\model\Generator
validateMultiple() Проверяет несколько моделей. yii\base\Model
validateNamespace() Проверяет атрибут $ns. yii\sphinx\gii\model\Generator
validateNewClass() Встроенный валидатор, проверяющий, является ли значение атрибута допустимым именем класса с пространством имён. yii\gii\Generator
validateTemplate() Проверяет выбор шаблона. yii\gii\Generator

Защищённые методы

Метод Описание Определено в
generateClassName() Генерирует имя класса из указанного имени таблицы. yii\sphinx\gii\model\Generator
getDbConnection() yii\sphinx\gii\model\Generator
getIndexNames() yii\sphinx\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

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

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

public  $baseClass = 'yii\sphinx\ActiveRecord'

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

public  $db = 'sphinx'

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

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

public string getDescription ( )

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

public  $indexName = null

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

public  $modelClass = null

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

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

public string getName ( )

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

public  $ns = 'app\models'

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

public  $useIndexPrefix = false

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

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 ( $indexName )
$indexName string

Имя таблицы (которое может содержать префикс схемы)

return string

Сгенерированное имя класса

generateIndexName() public method

Генерирует имя таблицы, учитывая префикс таблицы.

Если $useIndexPrefix равно false, имя таблицы будет возвращено без изменений.

public string generateIndexName ( $indexName )
$indexName string

Имя таблицы (которое может содержать префикс схемы)

return string

Сгенерированное имя таблицы

generateLabels() public method

Генерирует метки атрибутов для указанной таблицы.

public array generateLabels ( $table )
$table yii\db\TableSchema

Схема таблицы

return array

Сгенерированные метки атрибутов (имя => метка)

generateRules() public method

Генерирует правила валидации для указанного индекса.

public array generateRules ( $index )
$index yii\sphinx\IndexSchema

Схема индекса

return array

Сгенерированные правила валидации

getDbConnection() protected method

protected yii\sphinx\Connection getDbConnection ( )
return yii\sphinx\Connection

Подключение к Sphinx, заданное $db.

getDescription() public method

public string getDescription ( )
return string

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

getIndexNames() protected method

protected array getIndexNames ( )
return array

Имена индексов, соответствующие шаблону, заданному $indexName.

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\sphinx\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\sphinx\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 массив rules ( )
return массив

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

stickyAttributes() public метод

Возвращает список неизменяемых атрибутов.

Неизменяемый атрибут сохранит своё значение и будет инициализирован этим значением при повторном запуске генератора.

public массив stickyAttributes ( )
return массив

Список неизменяемых атрибутов

validateDb() public метод

Проверяет атрибут $db.

public void validateDb ( )

validateIndexName() public метод

Проверяет атрибут $indexName.

public void validateIndexName ( )

validateModelClass() public метод

Проверяет атрибут $modelClass.

public void validateModelClass ( )

validateNamespace() public метод

Проверяет атрибут $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-sphinx-gii-model-generator.html

Spec-Zone.ru

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