Boa pergunta!
Você já ouviu dizer que o Zend_Form não tem disponível para uso direto o famoso “$this->view->…” que utilizamos para passar variáveis e objetos para o View de nossa aplicação, pois supostamente, acredito que ele não faça parte do View (risos). Pela lógica, a classe em si não precisaria uma vez que é possivel…
Sim, mas ai vem o caso, e se estou criando um formulário e quero utilizar um helper que ja criei antes? Neste caso, alguem poderia dizer para utilizar um view script para o form e aplicar lá dentro do arquivo em questão as chamadas aos helpers.
É faria sentido, pois ai sim é o lugar de se usar Views, só não faria sentido se eu não quiser ou precisar utilizar tal recurso!
Bom, então para os que depois de buscas e mais buscas sem respostas de como se fazer isto, ai vai a dica:
Preferencialmente no início de seu método init() da classe estendida do Zend_Form que você está criando, insira o seguinte código:
class Application_Form_MeuFormularioDoidao extends Zend_Form
{
protected $_myhelper;
public funcion init( )
{
$this->_myhelper = Zend_Controller_Action_HelperBroker::getStaticHelper('ViewRenderer');
}
}
E para chamar o seu Helper, apenas faça o que você já conhece:
$seiLaOque = $this->_myhelper->view->meuHelperBonzao();