Olá Tiago, vc conseguiu fazer a "magia" apos sua customização?
Estou com a mesma dificuldade/dúvida.
Na verdade não estou sabendo como persistir minha lista, pois quando dou um cliente.getPedidos() ela esta null, mas isso é obvio pq eu não setei os pedidos, tipo cliente.setPedido(...) e não fiz isso pq meu greendao gera apenas o metodo get, o seu gerou o set?
Em quinta-feira, 14 de novembro de 2013 09h42min55s UTC-2, Tiago J. Grillo escreveu:
-- Estou com a mesma dificuldade/dúvida.
Na verdade não estou sabendo como persistir minha lista, pois quando dou um cliente.getPedidos() ela esta null, mas isso é obvio pq eu não setei os pedidos, tipo cliente.setPedido(...) e não fiz isso pq meu greendao gera apenas o metodo get, o seu gerou o set?
Em quinta-feira, 14 de novembro de 2013 09h42min55s UTC-2, Tiago J. Grillo escreveu:
vlwEnfim, estou customizando o código que ele gera e fazendo alguns testes, quando chegar em uma conclusão 100%, eu compartilho o código para vocês avaliarem.Só achei que ele gera muita "porcaria", claro que isto talvez seja para mim que vou fazer algo mais simples.Felipe acho que falei besteira, ele faz a tal "magica" que eu quero sim.Ontem a noite fiquei testando e estudando as classes que ele gera com mais calma.
2013/11/14 Felipe Aron <felip...@gmail.com>
Agora entendi! :DSe você usar insert(pedido) será obrigado a indicar o idCliente. Agora não me lembro se é necessário indicar o idCliente quando adicionado o pedido na lista de clientes e salvar o mesmo - cliente.getPedidos().add(pedido). Vou dar uma verificada aqui como fiz ai volto pra postar meus resultados! :DEm 13 de novembro de 2013 17:55, Tiago Grillo <tijg...@gmail.com> escreveu:
Entendeu? é isto mesmo, eu tenho que me preocupar com isto?E não simplesmente falar ...insert(pedido); e o greenDAO fazer todo o trabalho..Estou questionando mais o fato de eu ter que me preocupar em passar o idCliente qdo vou salvar um pedido.Deu sim Felipe e até eu consegui fazer balinha exatemente como mostrou.o usar isto depois que achei confuso (errado).
--2013/11/13 Felipe Aron <felip...@gmail.com>Fala ai Tiago blz?!Cara de início também fiquei confuso, mas depois que entendi como fazer a relação entre as classes ficou fácil. Seguinte:ToOne (1:N) -> A partir do DETALHE [ ]ToMany (N:1) -> A partir do MESTRE [ ]Vamos a prática -- No teu caso 1 Cliente tem N pedidos (ToMany). 1 pedido pertence a apenas 1 cliente (ToOne).CLIENTEEntity cliente = schema.addEntity("Cliente");...PEDIDOEntity pedido = schema.addEntity("Pedido");Property idCliente = pedido.addLongProperty("idCliente").getProperty(); pedido.addToOne(cliente, idCliente);ToMany toMany = cliente.addToMany(pedido, idCliente);toMany.setName("Pedidos");A partir dessa estrutura eu consigo a partir da instancia de cliente:cliente.getPedidos()...Deu pra entender? rs--Em 13 de novembro de 2013 16:15, Tiago Grillo <tijg...@gmail.com> escreveu:--Tenho a classe Cliente (mestre) e a classe Pedido (detalhe) 1:NBoa tarde,Estou tentando fazer com o GreenDAO o esquema de Mestre/Detalhe e não sei se estou errando em algo ou a ideia é esta mesma.
O que eu desejo:List<Pedido> lPed = new ArrayList<Pedido>();lPed.add(new Pedido(null, 1d));lPed.add(new Pedido(null, 1d));
Cliente c = new Cliente();c.setNome("teste1");c.setPedidos(lPed);
Dao.getSession(this).insert(c);
Ou seja, que o GreenDAO se encarre de persistir meus itens, de ver qual o codigo do cliente para a chave estrangeira..O que consegui:
Cliente c = new Cliente();
c.setNome("teste1");
Dao.getSession(this).insert(c);
List<Cliente> listC = Dao.getSession(this).getClienteDao().loadAll();
for (Cliente c1 : listC) {
Pedido p = new Pedido(null, 1d, c1.getId());
Dao.getSession(this).getPedidoDao().insert(p);
}
Não me parece muito natual!?!?!
Obrigadops1: Gerei as classes pelo greeDAOGeneratorps2: O projeto de teste meu esta anexo, caso alguma alma caridosa esteja disposta ver com mais detalhes.
You received this message because you are subscribed to the Google Groups "Android Brasil - Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to androidbrasil-...@googlegroups.com .
For more options, visit https://groups.google.com/groups/opt_out .
--سمووحخ ̷̴̐ خ ̷̴̐ خ ̷̴̐ خ امارتيخ ̷̴̐ خAnalista-Programador
You received this message because you are subscribed to the Google Groups "Android Brasil - Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to androidbrasil-...@googlegroups.com .
For more options, visit https://groups.google.com/groups/opt_out .
You received this message because you are subscribed to the Google Groups "Android Brasil - Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to androidbrasil-...@googlegroups.com .
For more options, visit https://groups.google.com/groups/opt_out .
--سمووحخ ̷̴̐ خ ̷̴̐ خ ̷̴̐ خ امارتيخ ̷̴̐ خAnalista-Programador--
You received this message because you are subscribed to the Google Groups "Android Brasil - Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to androidbrasil-...@googlegroups.com .
For more options, visit https://groups.google.com/groups/opt_out .
You received this message because you are subscribed to the Google Groups "Android Brasil - Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to androidbrasil-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.






0 comentários:
Postar um comentário