Classe de dominio
05/04/2012 15:01
0
Olá pessoal,

Tenho a minha classe de dominio e tenho uma lista de sexo: M, F


static constraints = {
sexo(inList:['M', 'F'])
}


Na página aparece corretamente o combo.

Eu queria mostrar na tela, Masculino e Feminino, mas o BD só aceita, F ou M(varchar2(1)).

Eu coloquei na minha classe de dominio:
String getSexo() {
def teste
if (sexo == 'M'){
teste = 'MASCULINO'
} else {
teste = 'FEMININO'
}
return teste
}

Mas dá erro.

Como que eu faço para retornar o valor sem precisar mexer nas GSPs?

Obrigado


Tags: dominio


0
Deixa ver se entendi, vc quer mostrar um combobox com 'MASCULINO' e 'FEMININO' ao invés de 'M' e 'F', te falaria pra tratar isso no GSP com as tag if, mas como falou que não quer tratar isso no GSP, vc tem que retornar no seu get uma lista e não só uma String! e qual é o erro que tah dando! posta aí pra nós! Abraços!


0
Bom, não acho que fica muito elegante mas acho que resolve sua situação, fiz um testezinho e funcionou aqui! só substuí o conteúdo da lista!

List<String> getSexo() {
sexo[0] = 'MASCULINO'
sexo[1] = 'FEMININO'

return sexo
}


0
Valeu Gabriel.
05/04/2012 17:19


0
Brother relendo sua dúvida, eu fiquei em dúvida! :D vc quer com o get pegar do banco? se for, no caso então retornaria 'M' ou 'F' e então vc gostaria de trocá-los pelo nome por extenso, estou certo? então se for testei com groovy puro e o código funcionou! se tiver ainda dando erro, posta o erro pra nós!

String getSexo() {
String tipoSexo = ""

if(sexo == "M") {
tipoSexo = "MASCULINO"
} else if(sexo == "F") {
tipoSexo = "FEMININO"
}

return tipoSexo
}



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