Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sérgio Macedo

Validação de campo float

Recommended Posts

Pessoal,

 

preciso validar um campo float:

1-Se não existe já cadastrado.

2-Se é maior que 0 (positivo).

 

Tentei usar estes comandos:

 

var $validate = array(
		'valor' => array(
				'isUnique' => array('rule' => 'isUnique', 'message' => 'Valor inserido consta em nossos registros.'),
				'comparison' => array('rule' => array('comparison', '>', 0), 'message' => 'Apenas valores positivos.')),

Problema: Ele só válida quando não tem o 'ponto' or '.' se o valor for inteiro tudo bem...

mas quando é float a coisa complica me dá o erro do mysql:

 

Warning (512): SQL Error: 1062: Duplicate entry '0.01' for key 'valor' [CORE\cake\libs\model\datasources\dbo_source.php, line 525]

 

Atenciosamente

Sérgio Macedo

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pessoal,

 

preciso validar um campo float:

1-Se não existe já cadastrado.

2-Se é maior que 0 (positivo).

 

Tentei usar estes comandos:

 

var $validate = array(
		'valor' => array(
				'isUnique' => array('rule' => 'isUnique', 'message' => 'Valor inserido consta em nossos registros.'),
				'comparison' => array('rule' => array('comparison', '>', 0), 'message' => 'Apenas valores positivos.')),

Problema: Ele só válida quando não tem o 'ponto' or '.' se o valor for inteiro tudo bem...

mas quando é float a coisa complica me dá o erro do mysql:

 

Warning (512): SQL Error: 1062: Duplicate entry '0.01' for key 'valor' [CORE\cake\libs\model\datasources\dbo_source.php, line 525]

 

Atenciosamente

Sérgio Macedo

 

 

Creio que a melhor forma para validar este campo é criar um methodo para isso

 

http://book.cakephp.org/view/150/Custom-Validation-Rules#Adding-your-own-Validation-Methods-152

 

você cria o methodo com as devidas regras e chama no validates

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu pensei nisso tb...

 

mas achei que é que estivesse errado ao fazer a consulta com isUnique em float...

mas deve ser bug mesmo!

 

 

Até mais

Sérgio Macedo

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.