Duvida
06/12/2011 19:11
0
Bom tarde.

Ainda não conseguir implementar o codigo para pesquisa de um determinado campo.

Gostaria de sua ajuda.

No projeto tenho:

package projeto

class Projeto {

String nome
String descricao
Date dataCadastro = new Date()
Date dataPrevista
String observacoes

static hasMany = [tarefa:Tarefa]

String toString() {
return this.nome
}

static constraints = {
nome (nullable:false, blank:false, maxSize:64, unique:true)
descricao (nullable:false, blank:false, maxSize:255)
dataCadastro (nullable:false)
dataPrevista (nullable:false)
observacoes (nullable:true, blank:true, maxSize:255)
}
}

A classe Tarefa

package projeto

class Tarefa {

String nome
Boolean pronta = false
Date dataCadastro = new Date()
Projeto projeto

static belongsTo = Projeto

String toString() {
return "${this.nome} - ${this.pronta}"
}

static constraints = {
nome (nullable:false, blank:false, maxSize:64)
pronta (nullable:false)
dataCadastro (nullable:false)
}
}


no arquivo views/projeto/list.gsp

incluir o seguinte codigo:

<g:textField name="valor" value= />
<g:select name="tipo" from="${['Nome', 'Descricao']}" valueMessagePrefix= />
<g:actionSubmit class="pesquisar" action="pesquisar" value="Pesquisar" />

A questão é que eu não estou sabendo colocar o codigo sugerido por voce no arquivo controllers/projeto/ProjetoController.groovy

def buscaQuente = {
def resultado = SuaEntidade.withCriteria {
eq(params.tipoBusca, params.valorBusca)
}
[resultado:resultado]
}


"supor que você possua um controller e, neste controller, haja dois parametros: valorBusca e tipoBusca.
tipoBusca poderia ser, por exemplo: um combo cujos valores identifiquem os nomes dos campos e, valorBusca, o nome já diz: é o valor a ser buscado".


- a minha duvida é:

como enviar os parametros da view (views/projeto/list.gsp) para o controlador e como retornar o resultado da pesquisa realizada para o mesma view (views/projeto/list.gsp) atraves da list.

Tags: pesquisa, criteria


0
Você pode usar o "render":
http://grails.org/doc/latest/ref/Controllers/render.html

renderiza o list.gsp passando como parametro o retorno da busca com os paramentos que vc enviou para a action do seu controller.


def buscaQuente = {
def resultado = SuaEntidade.withCriteria {
eq(params.tipoBusca, params.valorBusca)
}
render(view:'list' model:[projetoInstanceList:resultado])
}
06/12/2011 19:28


0
Valeu Castiel pela dica.

Apliquei na aplicação mencionada acima e funcionou!!!

Obrigado!



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