Класс yii\validators\RangeValidator
| Наследование | yii\validators\RangeValidator » yii\validators\Validator » yii\base\Component » yii\base\Object |
|---|---|
| Реализует | yii\base\Configurable |
| Доступна с версии | 2.0 |
| Исходный код | https://github.com/yiisoft/yii2/blob/master/framework/validators/RangeValidator.php |
RangeValidator проверяет, что значение атрибута содержится в списке допустимых значений.
Диапазон можно указать через свойство $range. Если свойство $not установлено в true, валидатор будет проверять, что значение атрибута НЕ содержится в указанном диапазоне.
Открытые свойства
| Свойство | Тип | Описание | Определено в |
|---|---|---|---|
| $allowArray | boolean | Разрешить атрибут типа массив. | yii\validators\RangeValidator |
| $attributeNames | array | Имена атрибутов. | yii\validators\Validator |
| $attributes | array|string | Атрибуты, которые нужно валидировать с помощью этого валидатора. | yii\validators\Validator |
| $behaviors | yii\base\Behavior[] | Список поведений, прикрепленных к этому компоненту | yii\base\Component |
| $builtInValidators | array | Список встроенных валидаторов (имя => класс или конфигурация) | yii\validators\Validator |
| $enableClientValidation | boolean | Включить валидацию на стороне клиента для этого валидатора. | yii\validators\Validator |
| $except | array|string | Сценарии, для которых валидатор не должен применяться. | yii\validators\Validator |
| $isEmpty | callable | PHP вызов, который заменяет стандартную реализацию isEmpty(). | yii\validators\Validator |
| $message | string | Пользовательское сообщение об ошибке. | yii\validators\Validator |
| $not | boolean | Инвертировать логику валидации. | yii\validators\RangeValidator |
| $on | array|string | Сценарии, для которых валидатор может применяться. | yii\validators\Validator |
| $range | array|Traversable|Closure | Список допустимых значений, среди которых должно быть значение атрибута, или анонимная функция, возвращающая такой список. | yii\validators\RangeValidator |
| $skipOnEmpty | boolean | Пропускать валидацию, если значение атрибута null или пустая строка. | yii\validators\Validator |
| $skipOnError | boolean | Пропускать валидацию, если для атрибута уже есть ошибка валидации по предыдущим правилам. | yii\validators\Validator |
| $strict | boolean | Строгая проверка (должны совпадать и тип, и значение). | yii\validators\RangeValidator |
| $when | callable | PHP вызов, результат которого определяет, должен ли применяться этот валидатор. | yii\validators\Validator |
| $whenClient | string | Имя JavaScript функции, результат которой определяет, должен ли применяться этот валидатор на стороне клиента. | yii\validators\Validator |
Открытые методы
| Метод | Описание | Определено в |
|---|---|---|
| __call() | Вызывает именованный метод, который не является методом класса. | yii\base\Component |
| __clone() | Этот метод вызывается после создания объекта путем клонирования существующего. | yii\base\Component |
| __construct() | Конструктор. | yii\base\Object |
| __get() | Возвращает значение свойства компонента. | yii\base\Component |
| __isset() | Проверяет, установлено ли свойство, т.е. определено и не равно null. | yii\base\Component |
| __set() | Устанавливает значение свойства компонента. | yii\base\Component |
| __unset() | Устанавливает свойство компонента в значение null. | yii\base\Component |
| addError() | Добавляет ошибку об указанном атрибуте в объект модели. | yii\validators\Validator |
| attachBehavior() | Прикрепляет поведение к данному компоненту. | yii\base\Component |
| attachBehaviors() | Прикрепляет список поведений к компоненту. | yii\base\Component |
| behaviors() | Возвращает список поведений, которые должен иметь этот компонент. | yii\base\Component |
| canGetProperty() | Возвращает значение, указывающее, можно ли прочитать свойство. | yii\base\Component |
| canSetProperty() | Возвращает значение, указывающее, можно ли установить свойство. | yii\base\Component |
| className() | Возвращает полное имя этого класса. | yii\base\Object |
| clientValidateAttribute() | Возвращает JavaScript, необходимый для выполнения проверки на стороне клиента. | yii\validators\RangeValidator |
| createValidator() | Создает объект валидатора. | yii\validators\Validator |
| detachBehavior() | Открепляет поведение от компонента. | yii\base\Component |
| detachBehaviors() | Открепляет все поведения от компонента. | yii\base\Component |
| ensureBehaviors() | Убеждается, что поведения, объявленные в behaviors(), прикреплены к этому компоненту. | yii\base\Component |
| getAttributeNames() | Возвращает очищенные имена атрибутов без символа ! в начале | yii\validators\Validator |
| getBehavior() | Возвращает объект именованного поведения. | yii\base\Component |
| getBehaviors() | Возвращает все прикрепленные к этому компоненту поведения. | yii\base\Component |
| getClientOptions() | Возвращает параметры проверки на стороне клиента. | yii\validators\RangeValidator |
| hasEventHandlers() | Возвращает значение, указывающее, есть ли обработчик, прикрепленный к указанному событию. | yii\base\Component |
| hasMethod() | Возвращает значение, указывающее, определен ли метод. | yii\base\Component |
| hasProperty() | Возвращает значение, указывающее, определено ли свойство для данного компонента. | yii\base\Component |
| init() | Инициализирует объект. | yii\validators\RangeValidator |
| isActive() | Возвращает значение, указывающее, активен ли валидатор для данного сценария и атрибута. | yii\validators\Validator |
| isEmpty() | Проверяет, является ли заданное значение пустым. | yii\validators\Validator |
| off() | Открепляет существующего обработчика событий от этого компонента. | yii\base\Component |
| on() | Прикрепляет обработчик событий к событию. | yii\base\Component |
| trigger() | Вызывает событие. | yii\base\Component |
| validate() | Проверяет заданное значение. | yii\validators\Validator |
| validateAttribute() | Проверяет один атрибут. | yii\validators\RangeValidator |
| validateAttributes() | Проверяет указанный объект. | yii\validators\Validator |
Защищенные методы
| Метод | Описание | Определено в |
|---|---|---|
| formatMessage() | Форматирует сообщение с использованием I18N или простым strtr, если \Yii::$app недоступен. | yii\validators\Validator |
| validateValue() | Проверяет значение. | yii\validators\RangeValidator |
Подробное описание свойств
$allowArray открытое свойство
Разрешить атрибут типа массив.
public boolean $allowArray = false
$not открытое свойство
Инвертировать логику проверки. По умолчанию false. Если true, значение атрибута не должно быть в списке значений, определенных через $range.
public boolean $not = false
$range открытое свойство
Список допустимых значений, среди которых должно быть значение атрибута, или анонимная функция, которая возвращает такой список. Синтаксис анонимной функции должен быть следующим:
function($model, $attribute) {
// compute range
return $range;
}
public array|Traversable|Closure $range = null
$strict открытое свойство
Строгая проверка (необходимо совпадение типа и значения)
public boolean $strict = false
Подробное описание методов
clientValidateAttribute() public method
Возвращает JavaScript, необходимый для выполнения проверки на стороне клиента.
Вызывает getClientOptions() для генерации массива параметров для проверки на стороне клиента.
Вы можете переопределить этот метод для возврата кода проверки JavaScript, если валидатор поддерживает проверку на стороне клиента.
Следующие переменные JavaScript предопределены и могут быть использованы в коде проверки:
-
attribute: объект, описывающий атрибут, который проверяется. -
value: значение, которое проверяется. -
messages: массив, используемый для хранения сообщений об ошибках валидации для атрибута. -
deferred: массив, используемый для хранения отложенных объектов для асинхронной валидации -
$form: объект jQuery, содержащий элемент формы
Объект attribute содержит следующие свойства:
-
id: уникальный идентификатор атрибута (например, "loginform-username") в форме -
name: имя атрибута или выражение (например, "[0]content" для табличных данных) -
container: селектор jQuery контейнера поля ввода -
input: селектор jQuery поля ввода в контексте формы -
error: селектор jQuery тега ошибки в контексте контейнера -
status: состояние поля ввода, 0: пустое, не вводилось ранее, 1: валидно, 2: ожидается валидация, 3: процесс валидации
| public string|null clientValidateAttribute ( $model, $attribute, $view ) | ||
|---|---|---|
| $model | yii\base\Model |
Модель данных, которая проверяется |
| $attribute | string |
Имя атрибута, который нужно проверить. |
| $view | yii\web\View |
Объект представления, который будет использоваться для рендеринга представлений или файлов представлений, содержащих форму модели с применённым этим валидатором. |
| return | string|null |
Скрипт проверки на стороне клиента. Null, если валидатор не поддерживает проверку на стороне клиента. |
getClientOptions() public method
Возвращает параметры проверки на стороне клиента.
Этот метод обычно вызывается из clientValidateAttribute(). Вы можете переопределить этот метод для изменения параметров, которые будут переданы проверке на стороне клиента.
| public array getClientOptions ( $model, $attribute ) | ||
|---|---|---|
| $model | yii\base\Model |
Проверяемая модель |
| $attribute | string |
Имя проверяемого атрибута |
| return | array |
Параметры проверки на стороне клиента |
init() public method
Инициализирует объект.
Этот метод вызывается в конце конструктора после инициализации объекта с заданной конфигурацией.
| public void init ( ) |
|---|
validateAttribute() public method
Проверяет один атрибут.
Подклассы должны реализовать этот метод, чтобы предоставить фактическую логику проверки.
| public void validateAttribute ( $model, $attribute ) | ||
|---|---|---|
| $model | yii\base\Model |
Проверяемая модель данных |
| $attribute | string |
Имя атрибута, который нужно проверить. |
validateValue() protected method
Проверяет значение.
Класс валидатора может реализовать этот метод для поддержки проверки данных вне контекста модели данных.
| protected array|null validateValue ( $value ) | ||
|---|---|---|
| $value | mixed |
Значение данных, которое нужно проверить. |
| return | array|null |
Сообщение об ошибке и параметры, которые нужно вставить в сообщение об ошибке. Null должен быть возвращён, если данные валидны. |
| throws | yii\base\NotSupportedException |
если валидатор не поддерживает проверку данных без модели |
© 2008–2017 by Yii Software LLC
Licensed under the three clause BSD license.
http://www.yiiframework.com/doc-2.0/yii-validators-rangevalidator.html