Parse automático de parâmetros via GET
06/07/2012 06:47
0
Olá,

Eu utilizo um framework em PHP chamado Yii, e uma funcionalidade que ele tem bem interessante é fazer o parse dos parâmetros da url e transformar em parâmetros GET, exemplo:

site.com/produtos/index/id/1/nome/teste

Ele cai no controller Produtos, na action Index e eu tenho em server side o valor da query string "id" = 1 e "nome" = teste.

Então migrando minha aplicação de PHP pra Grails, vou precisar disso, como fazer isso?

Lembrando que eu não vou ter que criar uma rota pra cada caso do sistema inteiro.

Abraços.
Tags: yii, php, url, get, querystring


0
Oi Paulo,

o Grails faz isto automaticamente. De uma lida na seção controllers da documentação oficial que explica de uma forma bem simples como trabalhar com isto.

Link: http://grails.org/doc/latest


0
Tem que definir as variáveis pelo UrlMappings, não precisa?
Eu sei que por padrão vem lá no UrlMappings.groovy

"/$controller/$action?/$id?"{
constraints {
// apply constraints here
}
}


se você colocar

"/$controller/$action?/$id?/$nome"{
constraints {
// apply constraints here
}
}


e acessar uma página "produtos/index/1/teste"
o valor de params.id vai ser 1
e o valor de params.nome vai ser "teste"
06/07/2012 13:00


0
Mas então, como escrevi, não quero fazer url por url.

Quero que em qualquer lugar eu possa fazer isso com quantos parâmetros precisar independente da ordem.

Para fazer um por um na mão com rota é fácil.
06/07/2012 14:13


0
Eu acho que dá pra escrever uma regra no urlMapping usando expressão regular
06/07/2012 17:54



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