[quote="evandrorg"]Pessoal, estou com uma dúvida enorme....
Preciso editar várias linhas em uma unica tela, essa tela é de notas de alunos, onde eu digito uma nota para cada aluno e clico uma única vez no update para salvar todas as minhas alteraçoes.
preciso trazer todas as informações da tabela como a action show, mas com um campo editavel, até isso tudo bem, o problema é como eu passarei todos os id e os valores que eu alterei, como farei isso, precisarei criar uma função específica???
mais ou menos esta é minha tela!!!!
------------------------------------------------
id | cd_aluno | Nota | Ano |
--- -|-------------|-------------- -|------|
001 | 85 | campo editavel | 2009 |
002 | 88 | campo editavel | 2009 |
------------------------------------------------
update (botao que atualiza todos os registros) |
------------------------------------------------
Não sei como fazer isso, pois acredito que seja mais complexo do que eu pensava....
alguem sabe se existe algum plugin para isso, ou algo já pronto???[/quote]
Vou te dar uma solução tosca para o problema.
AVISO: a solução é TOSCA, porém já serve de ponto de partida para alguma coisa.Você pode fazer o seguinte: se cada linha for referente ao id de um único aluno, você pode criar o seu formulário com campos cujos nomes reflitam o id do aluno em questão.
Exemplo:
se há um campo chamado nota, defina o seu id no gsp como sendo algo como nota_[id do aluno].
O seu gsp seria algo como o código abaixo:
<g:each in="${alunos}" var="notaAluno">
<tr>
... bla bla bla os demais campos ...
<td><input type="text" name="notaAluno${notaAluno.aluno.id}"/></td>
</tr>
</g:each>
E, no seu controlador, você faria algum processamento em cima dos nomes destes campos para identificar qual campo se relaciona com qual aluno a partir desta convenção.
Aliás, eis algo que em JSF é incrívelmente simples de se fazer e em Grails nem tanto.
(opa! primeira vez que vejo uma vantagem do JSF em cima do Grails!)