This commit is contained in:
Qiang Xue
2015-01-24 08:57:53 -05:00
parent 5ab58ac15b
commit 5ab1d1a0d1
3 changed files with 7 additions and 4 deletions

View File

@ -312,7 +312,7 @@ the method/function is:
```php
/**
* @param string $attribute the attribute currently being validated
* @param array $params the additional name-value pairs given in the rule
* @param mixed $params the value of the "params" given in the rule
*/
function ($attribute, $params)
```

View File

@ -26,7 +26,9 @@ class InlineValidator extends Validator
{
/**
* @var string|\Closure an anonymous function or the name of a model class method that will be
* called to perform the actual validation. The signature of the method should be like the following:
* called to perform the actual validation. The signature of the method should be like the following,
* where `$attribute` is the name of the attribute to be validated, and `$params` contains the value
* of [[params]] that you specify when declaring the inline validation rule:
*
* ~~~
* function foo($attribute, $params)
@ -34,7 +36,7 @@ class InlineValidator extends Validator
*/
public $method;
/**
* @var array additional parameters that are passed to the validation method
* @var mixed additional parameters that are passed to the validation method
*/
public $params;
/**

View File

@ -57,9 +57,10 @@ class ValidatorTest extends TestCase
$this->assertInstanceOf(BooleanValidator::className(), $val);
$this->assertSame(['a', 'b'], $val->on);
$this->assertSame(['c', 'd', 'e'], $val->except);
$val = TestValidator::createValidator('inlineVal', $model, ['val_attr_a']);
$val = TestValidator::createValidator('inlineVal', $model, ['val_attr_a'], ['params' => ['foo' => 'bar']]);
$this->assertInstanceOf(InlineValidator::className(), $val);
$this->assertSame('inlineVal', $val->method);
$this->assertSame(['foo' => 'bar'], $val->params);
}
public function testValidate()