Hola, estoy usando Yii2 y quisiera saber cómo puedo hacer una regla personalizada para mis modelos, por ejemplo, creo un array con un listado de correos permitidos y quiero que al tratar de registrar un usuario se verifique con esa lista de correos, esto lo crearía en un método que retorne true o false, pero ¿cómo puedo hacer que ese método forme parte de las rules? gracias.
De yii2 conosco muy poco pero yo lo que haría seria lo siguiente:
Crear una function en mi modelo:
public function verificarCorreo() {
$correoRegistrado = Usuarios::model()->find('correo = ? ',array($this->correo));
if ($correoRegistrado) {
return true;
}
$this->addError('email', 'Dominio incorrecto');
return false;
}
en tu controller le pasas el valor de correo y mandas el error:
public function actionCorreo(){
$model->email = $_POST['usuarios]['email];
if ($model->verificarCorreo() && $model->validate()) {
#Logica para guardar los datos $model->save(), etc
}
}