Spec-Zone.ru › Yii 1.1

CBooleanValidator

Пакет system.validators
Наследование class CBooleanValidator » CValidator » CComponent
Исходный код framework/validators/CBooleanValidator.php
CBooleanValidator проверяет, что значение атрибута равно либо trueValue, либо falseValue.

При использовании свойства message для определения пользовательского сообщения об ошибке, сообщение может содержать дополнительные заполнитель, которые будут заменены фактическим содержимым. В дополнение к заменимому значению "{attribute}", которое используется всеми валидаторами (см. CValidator), CBooleanValidator позволяет использовать следующие заполнитель:
  • {true}: заменяется значением, представляющим истинное значение trueValue.
  • {false}: заменяется значением, представляющим ложное значение falseValue.

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

Свойство Тип Описание Определено в
allowEmpty boolean указывает, может ли значение атрибута быть пустым или null. CBooleanValidator
attributes array список атрибутов, которые нужно валидировать. CValidator
builtInValidators array список встроенных валидаторов (имя=>класс) CValidator
enableClientValidation boolean выполнять ли валидацию на стороне клиента. CValidator
except array список сценариев, для которых валидатор не должен применяться. CValidator
falseValue mixed значение, представляющее ложное значение. CBooleanValidator
message string пользовательское сообщение об ошибке. CValidator
on array список сценариев, для которых валидатор должен применяться. CValidator
safe boolean являются ли атрибуты, указанные с этим валидатором, безопасными для массового назначения. CValidator
skipOnError boolean пропустить ли данную правило валидации, если для текущего атрибута уже есть ошибка валидации. CValidator
strict boolean строгое сравнение с trueValue и falseValue. CBooleanValidator
trueValue mixed значение, представляющее истинное значение. CBooleanValidator

Общественные методы

Метод Описание Определено в
__call() Вызывает метод, который не является методом класса. CComponent
__get() Возвращает значение свойства, список обработчиков событий или поведение на основе его имени. CComponent
__isset() Проверяет, является ли значение свойства пустым. CComponent
__set() Устанавливает значение свойства компонента. CComponent
__unset() Устанавливает свойство компонента в null. CComponent
applyTo() Возвращает значение, указывающее, применим ли валидатор к указанному сценарию. CValidator
asa() Возвращает объект поведения с заданным именем. CComponent
attachBehavior() Присоединяет поведение к данному компоненту. CComponent
attachBehaviors() Присоединяет список поведений к компоненту. CComponent
attachEventHandler() Присоединяет обработчик событий к событию. CComponent
canGetProperty() Определяет, можно ли считать свойство. CComponent
canSetProperty() Определяет, можно ли установить свойство. CComponent
clientValidateAttribute() Возвращает JavaScript, необходимый для выполнения валидации на стороне клиента. CBooleanValidator
createValidator() Создает объект валидатора. CValidator
detachBehavior() Отсоединяет поведение от компонента. CComponent
detachBehaviors() Отсоединяет все поведения от компонента. CComponent
detachEventHandler() Отсоединяет существующий обработчик событий. CComponent
disableBehavior() Отключает присоединенное поведение. CComponent
disableBehaviors() Отключает все присоединенные поведения. CComponent
enableBehavior() Включает присоединенное поведение. CComponent
enableBehaviors() Включает все присоединенные поведения. CComponent
evaluateExpression() Вычисляет PHP-выражение или обратный вызов в контексте этого компонента. CComponent
getEventHandlers() Возвращает список присоединенных обработчиков событий для события. CComponent
hasEvent() Определяет, определено ли событие. CComponent
hasEventHandler() Проверяет, есть ли присоединенные обработчики для данного события. CComponent
hasProperty() Определяет, определено ли свойство. CComponent
raiseEvent() Вызывает событие. CComponent
validate() Проверяет указанный объект. CValidator
validateValue() Проверяет статическое значение, чтобы убедиться, что оно является допустимым булевым значением. CBooleanValidator

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

Метод Описание Определено в
addError() Добавляет ошибку об указанном атрибуте в активную запись. CValidator
isEmpty() Проверяет, является ли данное значение пустым. CValidator
validateAttribute() Проверяет атрибут объекта. CBooleanValidator

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

allowEmpty свойство

public boolean $allowEmpty;

указывает, может ли значение атрибута быть null или пустым. По умолчанию значение true, означающее, что если атрибут пустой, он считается допустимым.

falseValue свойство

public mixed $falseValue;

значение, представляющее ложное значение. По умолчанию '0'.

strict свойство

public boolean $strict;

указывает, является ли сравнение с trueValue и falseValue строгим. Если значение true, то значение и тип атрибута должны совпадать со значениями trueValue или falseValue. По умолчанию false, что означает, что нужно только сопоставить значение.

trueValue свойство

public mixed $trueValue;

значение, представляющее истинное значение. По умолчанию '1'.

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

clientValidateAttribute() метод (доступен с версии v1.1.7)

public string clientValidateAttribute(CModel $object, string $attribute)
$object CModel объект данных, который проходит валидацию
$attribute string имя атрибута, который необходимо валидировать.
{return} string скрипт проверки на стороне клиента.
Исходный код: framework/validators/CBooleanValidator.php#97 (показать)
public function clientValidateAttribute($object,$attribute)
{
    
$message=$this->message!==null ? $this->message : Yii::t('yii','{attribute} must be either {true} or {false}.');
    
$message=strtr($message, array(
        
'{attribute}'=>$object->getAttributeLabel($attribute),
        
'{true}'=>$this->trueValue,
        
'{false}'=>$this->falseValue,
    ));
    return 
"
if("
.($this->allowEmpty ? "jQuery.trim(value)!='' && " : '')."value!=".CJSON::encode($this->trueValue)." && value!=".CJSON::encode($this->falseValue).") {
messages.push("
.CJSON::encode($message).");
}
"
;
}

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

См. также

  • CActiveForm::enableClientValidation

validateAttribute() метод

protected void validateAttribute(CModel $object, string $attribute)
$object CModel валидируемый объект
$attribute string валидируемый атрибут
Исходный код: framework/validators/CBooleanValidator.php#54 (показать)
protected function validateAttribute($object,$attribute)
{
    
$value=$object->$attribute;
    if(
$this->allowEmpty && $this->isEmpty($value))
        return;

    if(!
$this->validateValue($value))
    {
        
$message=$this->message!==null?$this->message:Yii::t('yii','{attribute} must be either {true} or {false}.');
        
$this->addError($object,$attribute,$message,array(
            
'{true}'=>$this->trueValue,
            
'{false}'=>$this->falseValue,
        ));
    }
}

Проверяет атрибут объекта. Если обнаружена ошибка, сообщение об ошибке добавляется к объекту.

validateValue() метод (доступен с версии v1.1.17)

public boolean validateValue(mixed $value)
$value mixed валидируемое значение
{return} boolean является ли значение допустимым boolean
Исходный код: framework/validators/CBooleanValidator.php#81 (показать)
public function validateValue($value)
{
    if (
$this->strict)
        return 
$value===$this->trueValue || $value===$this->falseValue;
    else
        return 
$value==$this->trueValue || $value==$this->falseValue;
}

Проверяет статическое значение на предмет того, является ли оно допустимым boolean. Этот метод предоставлен для того, чтобы вы могли вызывать его напрямую, не проходя через механизм правила валидации модели.

Обратите внимание, что этот метод не учитывает свойство allowEmpty.

© 2008–2017 by Yii Software LLC
Licensed under the three clause BSD license.
http://www.yiiframework.com/doc/api/1.1/CBooleanValidator

Spec-Zone.ru

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