PHP 클래스 yii\validators\ExistValidator

ExistValidator checks if the value being validated can be found in the table column specified by the ActiveRecord class [[targetClass]] and the attribute [[targetAttribute]]. This validator is often used to verify that a foreign key contains a value that can be found in the foreign table. The following are examples of validation rules using this validator: php a1 needs to exist ['a1', 'exist'] a1 needs to exist, but its value will use a2 to check for the existence ['a1', 'exist', 'targetAttribute' => 'a2'] a1 and a2 need to exist together, and they both will receive error message [['a1', 'a2'], 'exist', 'targetAttribute' => ['a1', 'a2']] a1 and a2 need to exist together, only a1 will receive error message ['a1', 'exist', 'targetAttribute' => ['a1', 'a2']] a1 needs to exist by checking the existence of both a2 and a3 (using a1 value) ['a1', 'exist', 'targetAttribute' => ['a2', 'a1' => 'a3']]
부터: 2.0
저자: Qiang Xue ([email protected])
상속: extends Validator
파일 보기 프로젝트 열기: yiisoft/yii2 1 사용 예제들

공개 프로퍼티들

프로퍼티 타입 설명
$allowArray whether to allow array type attribute.
$filter additional filter to be applied to the DB query used to check the existence of the attribute value. This can be a string or an array representing the additional query condition (refer to [[\yii\db\Query::where()]] on the format of query condition), or an anonymous function with the signature function ($query), where $query is the [[\yii\db\Query|Query]] object that you can modify in the function.
$targetAttribute the name of the ActiveRecord attribute that should be used to validate the existence of the current attribute value. If not set, it will use the name of the attribute currently being validated. You may use an array to validate the existence of multiple columns at the same time. The array values are the attributes that will be used to validate the existence, while the array keys are the attributes whose values are to be validated. If the key and the value are the same, you can just specify the value.
$targetClass the name of the ActiveRecord class that should be used to validate the existence of the current attribute value. It not set, it will use the ActiveRecord class of the attribute being validated.

공개 메소드들

메소드 설명
init ( )
validateAttribute ( $model, $attribute )

보호된 메소드들

메소드 설명
createQuery ( string $targetClass, mixed $condition ) : yii\db\ActiveQueryInterface Creates a query instance with the given condition.
validateValue ( $value )

메소드 상세

createQuery() 보호된 메소드

Creates a query instance with the given condition.
protected createQuery ( string $targetClass, mixed $condition ) : yii\db\ActiveQueryInterface
$targetClass string the target AR class
$condition mixed query condition
리턴 yii\db\ActiveQueryInterface the query instance

init() 공개 메소드

public init ( )

validateAttribute() 공개 메소드

public validateAttribute ( $model, $attribute )

validateValue() 보호된 메소드

protected validateValue ( $value )

프로퍼티 상세

$allowArray 공개적으로 프로퍼티

whether to allow array type attribute.
public $allowArray

$filter 공개적으로 프로퍼티

additional filter to be applied to the DB query used to check the existence of the attribute value. This can be a string or an array representing the additional query condition (refer to [[\yii\db\Query::where()]] on the format of query condition), or an anonymous function with the signature function ($query), where $query is the [[\yii\db\Query|Query]] object that you can modify in the function.
public $filter

$targetAttribute 공개적으로 프로퍼티

the name of the ActiveRecord attribute that should be used to validate the existence of the current attribute value. If not set, it will use the name of the attribute currently being validated. You may use an array to validate the existence of multiple columns at the same time. The array values are the attributes that will be used to validate the existence, while the array keys are the attributes whose values are to be validated. If the key and the value are the same, you can just specify the value.
public $targetAttribute

$targetClass 공개적으로 프로퍼티

the name of the ActiveRecord class that should be used to validate the existence of the current attribute value. It not set, it will use the ActiveRecord class of the attribute being validated.
또한 보기: targetAttribute
public $targetClass