Não consigo gravar valor NULL.
12/09/2012 14:37
0
Pessoal,

Tenho um combo e não consigo gravar valor null, depois de gravar algum valor nele.

<g:select name="lista.id"
from="${lista.list(sort:'descricao')}"
value="${itemInstance?.lista?.id}"
optionKey="id"
noSelection="${['':'Selecione... (opcional)']}"
/>


nesse combo tenho 3 opções que vem da lista e mais a opção de não selecionar nada:

Selecione... (opcional)
Baixa
Normal
Alta

No banco de dados, esse campo aceita valor null.

Pelo Grails:
Quando salvo pela primeira vez o registro com a opção "Selecione... (opcional)", ele grava null, corretamente.

Edito o registro e seleciono por exemplo "Baixa", ele grava no banco normalmente o id correspondente (1).

Mas quando edito e seleciono a opção "Selecione... (opcional)" e vou salvar, ele dá o seguinte erro:

"org.hibernate.HibernateException: identifier of an instance of com.inmetrics.Aquisicao was altered from 1 to null"

Ele não deixa eu voltar o valor pra null.

Alguém consequiria ajudar a como regravar o valor para null?

Obrigado

Tags: NULL


0
Pessoal,

resolvi assim na GSP, no combo:

De:
noSelection="${['':'Selecione... (opcional)']}"


Para:
noSelection="${[null:'Selecione... (opcional)']}"


Assim consegui gravar null, quando editei o combo com valor.

Abs.
12/09/2012 14:48


0
Olá, Igor.

Amigo, só uma dica do ponto de vista da Usabilidade: Como são apenas 3 itens a melhor opção seria ou uma lista "expandida" ou 3 "radio".
Mas se além desses 3 itens possam aparecer outros e outros mais, deixa como "combo" mesmo.

A explicação, do ponto de vista de IHC, é que se tens poucas opções é melhor que o usuário veja logo todas. Além de ser mais eficiente pra ele, reduz a chance de erros.

Mas isso é subjetivo, apenas uma opinião minha, ok?

Abraços.


0
Ótima sugestão Yoshiriro !!!
12/09/2012 19:15



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