Inserindo varios valores em uma mesma celula
09/05/2012 23:37
0
To numa situação que preciso inserir varios valores de uma vez no banco, na mesma tabela. Mas nao sei bem como fazer. Daí tentei fazer uma gambiarra, criei alguns inputs com mesmo nome e mandei, e pra minha surpresa nao deu erro, apenas gravou os valores separador por virgula. Até ai tudo bem. Mas agora eu quero mostrar esses valores separados para o usuario. Como faria isso? Tentei com o g:each mas naum funciona.
Tags: Listas, gsp


0
bom para inserir os valores de uma só vez no banco os atributos deverão estar em uma lista, após isso basta criar um laço de repetição, geralmente eu crio uma rotina na minha classe de domínio assim posso reutiliza-la ao longo do meu controlador. Bom sé é que eu entendi o que você queria eu acho que isso resolve!!
10/05/2012 12:51


0
São os mesmos dados que vc salva num mesmo campo da tabela?

ex: foto1,foto2,foto3

Se for depois que vc pegar esse campo na base de dados só dar um split usando a virgula como separador, aí vai vair ter uma lista então é só passar pro gsp e usar a tag each.


0
Entao Gabriel... tipow... eu to fazendo uma aplicacaozinha pra que o usuario monte uma tabela... saka.. dai eu criei uma tabela em gsp e em cada celula eu coloquei um input saka... Supondo que a tabela tenha 10 linhas, seráo dez campos repetidos para cada coluna, nesse caso terei q inserir dez registros(tuplas) duma vez no banco... ele insere beleza, tudo separado por virgula...
O que eu preciso agora é pegar esses dados e voltar eles pra tabela.. pra apresentar pro usuario... Voce poderia colocar a sintaxe do split aki... Meu codigo pra retornar os campos ta tabela ta mais o menos assim.

Linha 01: ${linha_tabelaInstance.campo1} 

Linha 02: ${linha_tabelaInstance.campo2} 

Linha 03: ${linha_tabelaInstance.campo3} 

Linha 04: ${linha_tabelaInstance.campo4} 


Dessa forma ae ele mostra mais o menos assim
Linha 01: QUANT, DESCRICAO, V. UNIT, V. TOTAL
Linha 02: 05, NOTEBOOK, 100, 500
...

Como eu usaria o split?...
tipow... ${linha_tabelaInstance.campo1.split(",")
Espero q tenha entendido...


0
Ola de novo deixa eu me iterar do assunto, no seu banco você tem um campo quant outro descrição ... assim por diante certo?
11/05/2012 20:00


0
Não mano... os campos do meu banco sao (campo1, campo2, campo3, campo4... campo10)
Fiz isso pra que o usuario possa criar suas tabelas saka... de no maximo 10 colunas...
tenho uma classe chamada tabela que pede ao usuario o nome da tabela, a quant. de colunas e a quant. de linhas.. .saka... quando ele bota esses dados eu salvo no banco e renderizo pra uma outra pagina, (linhas_tabela) que é essa pra qual eu to pedindo ajuda...
nessa eu ja gero uma tabela em html, bunitinha com base nos dados cedidos pelo usuario... tipow 5 linhas e 5 colunas... dai ele preenche ela todinha... e clica em salvar... nesse momento tudo é salvo da forma q eu citei nos coments anteriores.... saka... tudo separado por virgula... e um unico registro (tupla)... a questao da descricao, quant. valr e tals é pq eu tava simulando o usuario preenchendo a primeira linha saka... colocando o cabeçalho da table... entendeu...?


0
Brother, só uma idéia! Não acharia melhor separar em entidades? Por exemplo, vc teria uma entidade client_tables que contém informações sobre as tabelas, outra client_fields_tables que irá conter as informações sobre os campos e uma outra tabela associativa entre client_tables e client_fields_tables! Té!


0
O split vc usa no seu controlador mesmo, então como provavelmente vc vai retornar várias linhas, vc faz um loop, provavelmente com o each e para cada iteração vc faz o split, vc pode criar um List e jogar o resultado do split nele ou até um Map, então depois de criado vc passa esse List ou Map pro GSP retornando ele no controlador.

ex: [listDadosCliente : dadosCliente]



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