Hola,
tengo otro problemilla, seguro que hay una manera mas sencilla de como yo quiero hacerlo.
Cuando un usuario se registra, he validado que no exista antes en la base de datos. El problema es que a la hora de modificar el usuario, me salta también la validación y no puedo modificarlo. Lo he conseguido validando si el registro tiene id, pero entonces, cuando creo un registro nuevo, a la hora de grabar, parece como si refrescara la página y me sale la validación. Solo aparece unos segundos y se redirecciona la página, pero claro, eso no queda bien. No se si la solución sería diferenciar de si estoy en create o en update, ¿me pueden ayudar?
Les pongo mi código:
public function rules()
{
return array(
.......
array('USER_GESTOR','disponibility'),
.....
);
}
public function disponibility()
{
if($this->ID_USER) // Esta validación es para que pueda modificar
return;
$usuario=Usuario::model()->find(array(
'select'=>'USER_GESTOR',
'condition'=>'USER_GESTOR=:USER_GESTOR',
'params'=>array(':USER_GESTOR'=>$this->USER_GESTOR),
));
if($usuario!=null)
$this->addError('USER_GESTOR','Usuario ya utilizado.');
}
Espero haya quedado clara mi duda.
Muchas gracias