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...
-
desde la raiz de tu proyecto en la consola ejecuta php artisan -V y la salida deberia ser algo parecido Laravel Framework 7.0.7
No hay comentarios:
Publicar un comentario