Importação CSV - Groovy/Grails
22/12/2011 00:44
0
Olá, pessoal.

Vi algumas informações no tópico http://www.grailsbrasil.com.br/post/show/789 mas estou com dificuldade.

Estou encontrando dificuldade para popular minhas classes de domínio com um arquivo csv.

Eu adicionei um println a cada linha lida do csv e eles estão sendo lidos, massss não estão sendo inseridos na minha tabela.

Preciso de um help.. não é nada urgente não.. comecei a me interessar pelo assunto depois do video "Grails: O que e porque"

Segue a estrutura do meu controlador "Importacao"

Importante:
- Telefone e Email são duas classes que se relacionam com a Pessoa, onde uma pessoa possui um ou mais telefones/email
- Tentei simplificar para inserção apenas do usuario.nome (comentando as outras linhas), mas mesmo assim, não rolou...
- Meu output mostra os campos bonitinho

O que estou fazendo de errado ou deixando de fazer?

Obrigado antecipadamente

-------------------------------
package meuProjeto
import org.core.stress.*

class ImportacaoController {

def index() {
def csv = new File("D:\SERVER\Arquivo.csv")

csv.splitEachLine(';') { campo ->

//def id = campo[0] ?:0

println(campo[0] +" "+ campo[1] +" "+ campo[2] +" "+ campo[3])
def pessoa = new Pessoa()
pessoa.nome = campo[0] ?:"Sem nome"
pessoa.addtelefones = [campo[1] ?:"Sem Residencial",campo[2] ?:"Sem Comercial"]
pessoa.emails = [campo[3] ?:"SemEmail@terra.com"]
pessoa.save()
}
}
}

Rafael Calastro
Tags: csv importação import


0
Mais uma vez, estou aqui... mas dessa vez é pra postar a resposta!

Além de um pequeno ajuste nos comandos, o "sexo" eu tinha definido como nullable:false e meu banco (mysql) estava esperando um valor...

Abs!

" def pessoa = new Pessoa()
def tel = new Telefone()
pessoa.nome = campo[0]
pessoa.sexo = "MASC"
tel.numero = campo[1]
pessoa.addToTelefones(tel)
pessoa.save()"

Rafael Calastro
22/12/2011 01:13



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