Como passar os itens da lista do g:each para o params?
06/12/2011 22:54
0

por exemplo
quando tenho...

<tr class="prop">
<td valign="top" class="name"><label for="nome">Nome</label></td>
<td valign="top" class="value ${hasErrors(bean: usuarioInstance, field: 'nome', 'errors')}">
<g:textField name="consultantComment" value="${usuarioInstance?.nome}" />
</td>
</tr>


...o valor do campo 'nome' passa para o params com a chave nome

println params -> [nome: Gabriel]


certo?

agora como faço para passar para o params os items de uma lista, tipo assim:

<g:each in="${usuarioInstance.livros}" var="l">
<li>${l?.encodeAsHTML()}</li>
</g:each>


entemderam? preciso que os items que estão em usuarioInstance.livros para usar o controller



Tags: params g:each


0
No caso, sempre que algo vêm da view para o controlador, deve ser sob a forma de um input.

Então, você renderizaria algo como o código abaixo para um checkbox por exemplo:


<g:each in="${listaQuente}" var="itemQuente">
<g:checkBox name="nomeAtributoQuente" value="${itemQuente.qualquerAtributo}"/> bla bla
</g:each>


NO seu controlador, para obter os valores, como são multiplos, você vai escrever algo como


def listaValores = params.list("nomeAtributoQuente")


Vai retornar uma lista pra você.



0
obrigado mais uma vez
07/12/2011 15:55



Ainda não faz parte da comunidade???

Para se registrar, clique aqui.


Aprenda Groovy e Grails com a Formação itexto!

Newsletter Semana Groovy

Assinar

Envie seu link!


Livro de Grails


/dev/All

Os melhores blogs de TI (e em português) em um único lugar!

 
Creative Commons
RSS Grails Brasil é mantido por itexto Consultoria.
Em caso de problemas contacte Henrique Lobo Weissmann (Kico) por e-mail: kico@itexto.com.br
Todo o conteúdo presente neste site adota o Creative Commons como licença padrão.
Ver: 4.14.0
itexto