sando o ViewScript Decorator em subformulários aninhados (formulário Zen

Eu quero usar um script de exibição para renderizar meu formulário zend, pois parece ser a melhor maneira de controlar o layout / design do formulário enquanto ainda estiver usando as classes Zend_Element

No script view, eu renderizo o elemento com$this->element->getElement('elementName') .

Estou tendo problemas com os nomes dos elementos. Na verdade, é um sub-formulário dentro de um sub-formulário dentro de um formulári

Quando usei os decoradores de FormElements, o nome completo dos elementos era form [subForm] [subForm] [elemento], o que era bom. Quando mudei para os decoradores do viewScript, ele mudou para subForm [subForm] [elemento].

Eu entendi que preciso usar o decorador PrepareElements para corrigir isso, mas isso fez com que o nome alterasse o formulário [subForm] [form] [subForm] [subForm] [elementos] (dobrou os dois primeiros nomes no início).

Alguma idéia de como devo lidar com isso?

Obrigado

ATUALIZAR Tentei depurar o PrepareElements e realmente não entendo o que está fazendo. Parece que funciona bem na primeira iteração, mas adiciona novamente o prefixo [subformulário] do formulário ao executar em um dos subformulários intermediário

Quando não estou usando o decorador PrepareElements, apenas falto o prefixo "formulário" nos nomes (ou seja, em vez do formulário [subForm] [elemento], recebo apenas o subForm [elemento]

Pode ser que eu possa consertar isso de alguma form

Tentei alterar o belongsTo, mas isso substituiu apenas o prefixo "subForm"

Na verdade, parece que o que está faltando é um método belongsTo no subFor

Novamente, isso é tudo por causa do decorador do ViewScript. Funciona bem com os decoradores do FormElements.

UPDATE 2: Só para esclarecer, eu não me importaria com essa alteração de nome, mas isso faz com que meus campos não sejam preenchidos quando chamo formulário-> preenche

Editar Acho que reduzi o problema a isso: quando recupero meus valores em setDefaults, eles são ordenados da seguinte forma:

array(
\"formElements1-name\" => value1... \"subFormName\" => array(
\"parentFormName\" => array(
\"subFormName\" => subForm-values-array
)
)

... O principal problema aqui é o"parentFormName" => "subFormNAme".. o que se repete? Eu já estou na forma principal. Suponho que isso seja causado porque defini osetElementsBelongTo(formName[subFormName]), mas se não o fizesse, os valores do meu subformulário seriam completamente separados do formulário,

i.e. valores array = array (\ "formName \" => array (formValues), \ "subFormNAme \" => array (subFormValues)

, enquanto eu espero que seja

array(
formName => array(
subFormNAme => values-array
)
)...

É possível fazer isso funcionar?

questionAnswers(4)

yourAnswerToTheQuestion