4.1.6 Validando Valores no Controle
The original text for this section has changed since it was translated. Please help resolve this difference. You can:
Enquanto normalmente você apenas usa o método save do model, talvez as vezes você queira validar os valores sem salva-los. Por exemplo, talvez você queira mostrar alguma informação extra para o usuário antes de salvar os valores no banco de dados. Validar estes valores requer um processo um pouco diferente do que simplesmente salva-los.
Primeiro, defina os valores no model.
$this->ModelName->set( $this->data );
$this->ModelName->set( $this->data );
Então verifique se os valores validaram, use o método validates() do model, ele irá retornar true se validar e false se não validar.
if ($this->ModelName->validates()) {
// lógica de validado
} else {
// lógica de não validado
} if ($this->ModelName->validates()) {// lógica de validado} else {// lógica de não validado}
O método validates() chama o método invalidFields() para preencher o validationErrors no model. O método invalidFields() também retorna os resultados.
$errors = $this->ModelName->invalidFields(); // contem o array validationErrors
$errors = $this->ModelName->invalidFields(); // contem o array validationErrors
É importante notar que os valores têm que estar definidos no model antes para poderem ser validados. É diferente do método save() pois permite que as informações sejam passados como parâmetro.


























