Я не могу отключить заполнение значений в Zend_Form.
У меня есть свой собственный класс формы. Со скрытым элементом токена, где я хотел бы динамически устанавливать случайное значение каждый раз, когда форма вызывается (или помещается повторно). Я думал, что setValue сделает работу.
class MY_Form_Test extends Zend_Form {
public function init() {
...
$this->addElement('hidden', 'token');
$this->getElement('token')->setValue(uniqid('',true));
...
}
НО: Когда у меня есть такой простой контроллер. Zend автоматизирует заполнение старых скрытых значений, за исключением генерации новых.
$form = new JC_Form_Test();
if($form->isValid($_POST)){
// Action ...
}
else{
// Error
}
РЕШЕНИЕ: Единственное решение, которое я нашел, - это вызов setValue в методе Controler И ПОСЛЕ isValid. например. в блоке ошибок.
ВОПРОС: Есть ли способ настроить значения элементов непосредственно в классе формы ИЛИ отключить заполнение значений в классе формы или перед вызовом isValid ()?