Класс yii\validators\SafeValidator
| Наследование | yii\validators\SafeValidator » yii\validators\Validator » yii\base\Component » yii\base\Object |
|---|---|
| Реализует | yii\base\Configurable |
| Доступна с версии | 2.0 |
| Исходный код | https://github.com/yiisoft/yii2/blob/master/framework/validators/SafeValidator.php |
SafeValidator служит в качестве фиктивного валидатора, основное назначение которого — помечать атрибуты как безопасные для массового назначения.
Этот класс необходим из-за того, как Yii определяет, является ли свойство безопасным для массового назначения, то есть, когда пользователь отправляет данные формы, которые должны быть загружены в модель напрямую из данных POST, разрешено ли копировать свойство. В большинстве случаев это требуется, но иногда свойства являются внутренними, и вы не хотите, чтобы данные POST могли перезаписать эти внутренние значения (особенно такие вещи, как идентификаторы строк базы данных), поэтому Yii предполагает, что все значения небезопасны для массового назначения, если для свойства нет правила валидации, что в большинстве случаев будет. Иногда, однако, элемент безопасен для массового назначения, но не имеет связанного с ним правила валидации — например, из-за отсутствия выполнения валидации, в этом случае вы используете этот класс как правило валидации для этого свойства. Хотя у него нет функциональности, он позволяет Yii определить, что свойство безопасно для копирования.
Примечание: свойство $when не поддерживается SafeValidator.
Открытые свойства
| Свойство | Тип | Описание | Определено в |
|---|---|---|---|
| $attributeNames | массив | Имена атрибутов. | yii\validators\Validator |
| $attributes | массив|строка | Атрибуты, которые должны быть проверены этим валидатором. | yii\validators\Validator |
| $behaviors | yii\base\Behavior[] | Список поведений, присоединённых к этому компоненту | yii\base\Component |
| $builtInValidators | массив | Список встроенных валидаторов (имя => класс или конфигурация) | yii\validators\Validator |
| $enableClientValidation | boolean | Включить проверку на стороне клиента для этого валидатора. | yii\validators\Validator |
| $except | массив|строка | Сценарии, для которых валидатор не должен применяться. | yii\validators\Validator |
| $isEmpty | callable | PHP вызываемый объект, заменяющий стандартную реализацию isEmpty(). | yii\validators\Validator |
| $message | строка | Пользовательское сообщение об ошибке. | yii\validators\Validator |
| $on | массив|строка | Сценарии, для которых валидатор может применяться. | yii\validators\Validator |
| $skipOnEmpty | boolean | Пропустить проверку, если значение атрибута равно null или пустой строке. | yii\validators\Validator |
| $skipOnError | boolean | Пропустить проверку, если для проверяемого атрибута уже есть ошибка валидации в соответствии с предыдущими правилами. | yii\validators\Validator |
| $when | callable | PHP вызываемый объект, значение которого определяет, следует ли применять этот валидатор. | yii\validators\Validator |
| $whenClient | строка | Имя 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\Validator |
| 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\Validator |
| hasEventHandlers() | Возвращает значение, указывающее, есть ли обработчик, присоединенный к указанному событию. | yii\base\Component |
| hasMethod() | Возвращает значение, указывающее, определен ли метод. | yii\base\Component |
| hasProperty() | Возвращает значение, указывающее, определено ли свойство для этого компонента. | yii\base\Component |
| init() | Инициализирует объект. | yii\validators\Validator |
| 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\SafeValidator |
| validateAttributes() | Проверяет указанный объект. | yii\validators\SafeValidator |
Защищенные методы
| Метод | Описание | Определено в |
|---|---|---|
| formatMessage() | Форматирует сообщение с помощью I18N или просто strtr, если \Yii::$app недоступен. | yii\validators\Validator |
| validateValue() | Проверяет значение. | yii\validators\Validator |
Подробное описание методов
validateAttribute() публичный метод
Проверяет один атрибут.
Подклассы должны реализовать этот метод, чтобы предоставить фактическую логику проверки.
| public void validateAttribute ( $model, $attribute ) | ||
|---|---|---|
| $model | yii\base\Model |
Модель данных, которая должна быть проверена |
| $attribute | string |
Имя атрибута, который нужно проверить. |
validateAttributes() публичный метод
Проверяет указанный объект.
| public void validateAttributes ( $model, $attributes = null ) | ||
|---|---|---|
| $model | yii\base\Model |
Модель данных, которая проверяется |
| $attributes | array|null |
Список атрибутов, которые нужно проверить. Обратите внимание, что если атрибут не связан с валидатором, он будет пропущен. Если этот параметр равен null, будут проверены все атрибуты, перечисленные в $attributes. |
© 2008–2017 by Yii Software LLC
Licensed under the three clause BSD license.
http://www.yiiframework.com/doc-2.0/yii-validators-safevalidator.html