problema com FieldValue
12/01/2012 02:07
0
Olá pessoal,
queria imprimir uma soma no <g:fieldValue /> mais sem trazer esse valor do banco,
porem não estou conseguindo. Há alguma outra tag especifica só para imprimir um valor?

Obrigado a todos do grailsBrasil.
Tags: fieldValue


0
Oi Wellington,

a tag fieldValue na realidade pode ser aplicada a qualquer objeto que esteja disponível para o seu GSP, não necessáriamente uma classe de domínio.


0
Por exemplo:
eu tenho uma 2 datas,
tarefaInstance.dtCadastro , dtAtual = new Date();
quero imprimir em um fieldValue o numero de dias entre as duas datas.
Porem não consigo faze-lo. E tambem ai me surge outra duvida,
quero criar uma classe para fazer calculos e facilitar formatações de datas e etc.. Uma classe ultilitaria,
Como posso faze-la? Pois um domain ele salva no banco, onde criar essa classe?

Obrigado.
12/01/2012 11:39


0
Entendi Wellington.

Neste caso, a tag fieldValue não se encaixa, porque o objetivo dela é só renderizar na página o valor de um campo do objeto passado como parâmetro pelo atributo bean.

Você poderia, por exemplo, neste caso, passar a diferença entre datas para o seu model e ele simplesmente a exporia diretamente. Ou então, caso haja alguma lógica de negócio interessante por trás, ou o cálculo seja mais chatinho, implementar uma taglib para expor este valor pra você.

Esta classe utilitária que você quer criar pode ser implementada tanto como um serviço como uma classe convencional em Groovy/Java, que pode ser implementada no diretório src ou no diretório util.


0
Isso mesmo que eu quero,
mais se eu criar uma classe Groovy/Java ele vai criar a tabela no banco?(Se for no pacote domain).
Não quero que essa classe persista no banco.

E na tagLib, como eu passo um parametro para o meu método?
Vi suas aulas, mais foi pouco explicado, nao foi uma situação de passar dois ou tres valores.
imprimir na tela é só fazer o "out << ". Certo?
12/01/2012 15:47


0
Oi Wellington, só cria tabela no banco as classes de domínio, que são as que ficam dentro de grails-app/domain.

No caso da taglib, é exatamente da mesma forma. Imagine o código abaixo:


def tagQualquer = {attrs, body ->
def valor1 = attrs.valor1
def valor2 = attrs.valor2
def valor3 = attrs.valor3
// pra dar a saida
out << "Qualquer string ou objeto que possua um toString descente"
}


E na sua página gsp, vai ser algo como assim:


<seuNamespace:tagQualquer valor1="quente" valor2="como" valor3="lava"/>


0
Olá, muito obrigado pelas respostas,
ultima duvida,
Tenho uma classe no pacote tagLib, e eu quero usar uma classe do grails como por exemplo a classe FormatTagLib, e quero chamar o método getFormatDate, como faço?
15/01/2012 22:31



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