jueves, 17 de febrero de 2011

GRAILS - Parámetros multivaluados y params.list()

De nuevo os traigo un truquito que he leido en el observatorio, concretamente en el post SQ31 – Intermedio – Parámetros web multivaluados.

¿Nunca habéis tenido que recoger de los parámetros un campo con varios valores? Pues yo sí, y antes de leer este post he de decir que me volvía loca para convertir lo que recibía en algo que pudiera manipular cómodamente.

miércoles, 16 de febrero de 2011

GRAILS - Establecer puerto por defecto

Como todos sabéis (y si  no a partir de ahora lo haréis), el puerto por defecto que utiliza grails para las aplicaciones es el 8080, pero podemos cambiar fácilmente de puerto si nos es necesario.

Si queremos cambiar el puerto sólo ocasionalmente, opino que lo mejor es indicarlo a la hora de arrancar la aplicación. Si quisieramos arrancar la aplicación en el puerto 8090, bastaría con lanzar la ejecución de la siguiente forma.

grails -Dserver.port=8090 run-app

Pero claro, ¿y si lo que queremos es arrancar la aplicación siempre en el puerto 8090?. No resultaría muy práctico tener que incluir la opción cada vez que arrancamos la aplicación. Como no podía ser de otra manera, grails nos permite definir el puerto por defecto poniendo la siguiente línea en BuildConfig.groovy.

grails.server.port.http=8090

Enjoy!

viernes, 11 de febrero de 2011

GROOVY - Split en listas y mapas

Esta vez os traigo el método split para listas (List) y mapas (Map) en groovy. Se añaden a las propias clases mediante metaprogramación.

Si estáis utilizando grails, podéis incluirlos en el Bootstrap de vuestra aplicación para tenerlos siempre disponibles.

lunes, 7 de febrero de 2011

GRAILS - Establecer la ordenación de las asociaciones

Después de unos días de ausencia... os traigo un truquito nuevo que he leído en el Observatorio de grails, concretamente en este post.

No sé si os habréis encontrado alguna vez con la necesidad de obtener las relaciones de un objeto ordenadas siempre de la misma manera, pero yo sí. Hasta ahora lo que hacía era, si necesitaba que estuvieran ordenadas por id, añadía una propiedad List con el nombre de la relación. También he utilizado SortedSet para obtener una ordenación personalizada de esa relación. Y, por supuesto, definir el orden cada vez que hacía una consula, es decir, .findAllByNombre(nombre,[sort:'nombre',order:'asc']).

Twitter Delicious Facebook Digg Stumbleupon Favorites More