symfony3 formularios - validaciones personalizadas
Se puede crear nuestras propias constraints
siguiendo el esquema de las que existen:
por ejemplo para la constraint NotBlank (clase annotation) existe una clase NotBlankValidator que implementa la validacion.
Ambas clases se encuentran en la misma carpeta vendor/Symfony/Validator/Contraints
entonces,
para crear una constraint que permita alfanumericos con espacios, creamos la carpeta
src/AppBundle/Validator/Constraints
y ahi creamos la clase llamada por ejemplo ContainsAlphanumericWithSpaces y ContainsAlphanumericWithSpacesValidator
donde
/**
* @Annotation
*/
class ContainsAlphanumericWithSpace extends Constraint{
public $message = 'The string "%string%" contains an illegal character: it can only contain letters, numbers or spaces.';
}
class ContainsAlphanumericWithSpaceValidator extends ConstraintValidator
{
public function validate($value, Constraint $constraint)
{
if (!preg_match('/^[a-zA-Z0-9\s]+$/', $value, $matches)) {
$this->context->buildViolation($constraint->message)
->setParameter('%string%', $value)
->addViolation();
}
}
Suscribirse a:
Enviar comentarios (Atom)
linux ubuntu mint actualizar chrome
desde una terminal: $ sudo apt update $ sudo apt install google-chrome-stable
-
por consola y desde la raiz de tu proyecto php artisan --version
-
en nuestro proyecto creamos una carpeta llamada donde estaran todas nuestras clases, por ejemplo una llamada: MiApp adentro de esta irian b...
-
Integridad al nivel de la base de datos Oracle Oracle valida la integridad de la base de datos y presenta los siguientes mensajes de erro...
No hay comentarios:
Publicar un comentario