Que tal
abimael,
En realidad no es un problema, es el comportamiento normal, si el valor que recibe Zend_Form_Element::isValid es un string vació y el element no esta marcado como
required o
allowEmpty es false, el validator ni siquiera se dispara, simplemente devuelve true, para cambiar el comportamiento deberías setear
allowEmpty a false, en tu ejemplo seria:
Código PHP:
Ver original$foo = new Zend_Form_Element_Select('foo');
$foo->setLabel('Foo:')
->setAllowEmpty(false)
...
Hay algo que no entiendo, que es lo que queres validar exactamente ?, porque si es que no sea vació lo podes lograr así:
o bien así:
Código PHP:
Ver original$element->setAllowEmpty(false)
->addValidator('NotEmpty', false, array('type' => Zend_Validate_NotEmpty
::STRING));
No veo la necesidad de crear un validator para lo que estas haciendo.
Saludos.