Como gravar e exibir atributos de uma classe em outra?
07/07/2014 16:12
0
Ola

Estou começando a trabalhar com Grails, uso a versão 2.3.8, e no projeto que tenho que fazer tem duas classes, "Cliente" com os atributos "Nome" e "CPF", e a outra classe "Endereco", com atributos "Rua", "Bairro" e "Número". A parte de gravar dados nas telas de Create e exibi-los nas telas de Show das duas classes, eu já fiz, mas eu também preciso gravar os atributos da classe "Endereco" nas telas Create e Show da classe "Cliente". Alguém tem alguma dica?
Tags: grails


1
O embedded pode fazer isto para você:http://grails.org/doc/2.3.8/ref/Domain%20Classes/embedded.html
07/07/2014 16:21


0
Dyego, ainda não consegui gravar os dados, mas muito obrigado pela dica, aprendi algo novo no grails.
08/07/2014 11:01


1
Oi Rodrigo,

acho que entendi sua dúvida. Seu problema não é com as classes de domínio, mas sim com a exposiçaõ das mesmas, certo?

Bom: o scaffolding do Grails apenas gera as páginas para uma entidade por vez. No seu caso, o que você terá de fazer é usar o scaffold estático (grails generate-all (nome da classe que você quer)) e, em seguida, customizar a exposição da sua página show, que é aonde você quer expor todos os deamis detalhes.

Por padrão, o que o Grails irá fazer é expor para você apenas um dos atributos da classe relacionada. O que você poderia fazer é sobrescrever o método toString da classe relacionada para que ficasse exposto de uma maneira melhor pra você quando for expor apenas este atributo.


0
@Kico

Sim é isso mesmo, como que sobrescreve o método toString da classe que quero relacionar?
08/07/2014 12:29


1
É bem fácil.

Imagine que você tenha uma classe como esta:


class Pessoa {
String nome
}


se você for expor os registros em um combobox vai ver um monte de coisas como "Pessoa : 1", "Pessoa : 2", etc. Este é o método toString padrão do Grails. Basta mudar sua classe para que fique como no exemplo a seguir:


class Pessoa {
String nome
public String toString() {
this.nome
}
}


Vai imprimir o atributo nome de cada instância.


0
@Kico

Muito obrigado, deu certo.
08/07/2014 17:00



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