Consejos y funcionalidades más útiles en la consola de Ruby on Rails
A continuación mostraré algunos trucos y consejos varios de más utilidad cuando se trabaja desde la consola en el desarrollo de aplicaciones web con Ruby on Rails.
Para abrir la consola a partir de Rails 3 podemos ejecutar el comando:
o script/console en versiones anteriores.
Una de las mejores características de Ruby es cómo trata a las colecciones de objetos y lo fácil que es manipularlas.
La instrucción map y collect tienen la misma funcionalidad: A partir de una colección de datos devuelven un nuevo array con los datos manipulados.
Además, gracias a la navegabilidad que nos ofrece ActiveRecords para obtener información relacionada de distintos modelos, podemos obtener resultados asombrosos rápidamente. Véamos un ejemplo.
Si tenemos una colección de Posts:
Para obtener sólo los ids, podemos ejecutar:
Si queremos ver los títulos:
Si deseamos obtener más información de un objeto en concreto podemos hacerlo del siguiente modo:
Mostrará el nombre de cada usuario que ha escrito un mensaje.
El método select es también muy importante. Podemos seleccionar sólo los elementos de una colección que cumplan cierta condición:
De la colección de nombres de usuarios devolverá la que tenga de nombre "Lorena"
Rails trae un conjunto de herramientas para hacer pruebas de benchmarking de la aplicación, pero si desde la consola queremos realizar una prueba rápida podemos utilizar el método realtime de la clase Benchmark, por ejemplo:
En este caso vemos que utilizar la instrucción << es mucho más rápido que +=.
Una forma rápida de guardar el contenido ejecutado en la instrucción anterior desde la consola es utilizar el símbolo '_'.
Para ver las consultas SQL que se ejecutan al utilizar los modelos ActiveRecord, podemos ejecutar esta instrucción en la misma consola en "Rails 3":