Valida que un valor es false. En concreto, esta comprueba si el valor es exactamente false, exactamente el número entero 0, o exactamente la cadena «0».
Además consulta True.
Aplica a | propiedad o método |
Opciones | |
Clase | Symfony\Component\Validator\Constraints\False |
Validador | Symfony\Component\Validator\Constraints\FalseValidator |
La restricción False se puede aplicar a una propiedad o a un método «captador», pero comúnmente, es más útil en este último caso. Por ejemplo, supongamos que quieres garantizar que una propiedad state no está en un arreglo dinámico de invalidStates. En primer lugar, crearías un método «captador»:
protected $state;
protected $invalidStates = array();
public function isStateInvalid()
{
return in_array($this->state, $this->invalidStates);
}
En este caso, el objeto subyacente es válido sólo si el método isStateInvalid devuelve false:
# src/BlogBundle/Resources/config/validation.yml
Acme\BlogBundle\Entity\Author
getters:
stateInvalid:
- "False":
mensaje: You've entered an invalid state.
// src/Acme/BlogBundle/Entity/Author.php
namespace Acme\BlogBundle\Entity;
use Symfony\Component\Validator\Constraints as Assert;
class Autor
{
/**
* @Assert\False(
* message = "You've entered an invalid state."
* )
*/
public function isStateInvalid()
{
// ...
}
}
<!-- src/Acme/BlogBundle/Resources/config/validation.xml -->
<class name="Acme\BlogBundle\Entity\Author">
<getter property="stateInvalid">
<constraint name="False">
<option name="message">You've entered an invalid state.</option>
</constraint>
</getter>
</class>
// src/Acme/BlogBundle/Entity/Author.php
namespace Acme\BlogBundle\Entity;
use Symfony\Component\Validator\Mapping\ClassMetadata;
use Symfony\Component\Validator\Constraints as Assert;
class Autor
{
public static function loadValidatorMetadata(ClassMetadata $metadata)
{
$metadata->addGetterConstraint('stateInvalid', new Assert\False());
}
}
Prudencia
Cuando utilices YAML, asegúrate de rodear False entre comillas ("False") o de lo contrario YAML lo convertirá en un valor booleano.