Browse Source

Add array conversion on creating validator

tags/2.0.0-beta
slavcodev 11 years ago
parent
commit
3ff8f10d11
  1. 2
      framework/yii/base/Model.php
  2. 2
      tests/unit/data/validators/models/FakedValidationModel.php

2
framework/yii/base/Model.php

@ -390,7 +390,7 @@ class Model extends Component implements IteratorAggregate, ArrayAccess
if ($rule instanceof Validator) { if ($rule instanceof Validator) {
$validators->append($rule); $validators->append($rule);
} elseif (is_array($rule) && isset($rule[0], $rule[1])) { // attributes, validator type } elseif (is_array($rule) && isset($rule[0], $rule[1])) { // attributes, validator type
$validator = Validator::createValidator($rule[1], $this, $rule[0], array_slice($rule, 2)); $validator = Validator::createValidator($rule[1], $this, (array) $rule[0], array_slice($rule, 2));
$validators->append($validator); $validators->append($validator);
} else { } else {
throw new InvalidConfigException('Invalid validation rule: a rule must specify both attribute names and validator type.'); throw new InvalidConfigException('Invalid validation rule: a rule must specify both attribute names and validator type.');

2
tests/unit/data/validators/models/FakedValidationModel.php

@ -29,7 +29,7 @@ class FakedValidationModel extends Model
{ {
return [ return [
[['val_attr_a', 'val_attr_b'], 'required', 'on' => 'reqTest'], [['val_attr_a', 'val_attr_b'], 'required', 'on' => 'reqTest'],
[['val_attr_c'], 'integer'], ['val_attr_c', 'integer'],
]; ];
} }

Loading…
Cancel
Save