Browse Source

Fixes issue #428 Allowing UniqueValidator to be used with non-AR models.

tags/2.0.0-beta
Qiang Xue 12 years ago
parent
commit
f1ce0e165d
  1. 3
      framework/yii/validators/UniqueValidator.php

3
framework/yii/validators/UniqueValidator.php

@ -9,6 +9,7 @@ namespace yii\validators;
use Yii; use Yii;
use yii\base\InvalidConfigException; use yii\base\InvalidConfigException;
use yii\db\ActiveRecord;
/** /**
* CUniqueValidator validates that the attribute value is unique in the corresponding database table. * CUniqueValidator validates that the attribute value is unique in the corresponding database table.
@ -71,7 +72,7 @@ class UniqueValidator extends Validator
$query = $className::find(); $query = $className::find();
$query->where(array($column->name => $value)); $query->where(array($column->name => $value));
if ($object->getIsNewRecord()) { if (!$object instanceof ActiveRecord || $object->getIsNewRecord()) {
// if current $object isn't in the database yet then it's OK just to call exists() // if current $object isn't in the database yet then it's OK just to call exists()
$exists = $query->exists(); $exists = $query->exists();
} else { } else {

Loading…
Cancel
Save