Ruby on Rails

Hosting de Rails gratuito

Luego de hartarme de las supuestas mejoras de Heroku para hostear aplicaciones Rails de manera gratuita, inicié una exhaustiva búsqueda de opciones. Llegué al hosting que estoy promocionando en el banner de la izquierda.

Obtener registros previos/siguientes con ActiveRecord

Según se vaya avanzando en un proyecto, es posible que nos veamos en la necesidad de encotrar los registros vecinos para el que estemos utilizando en un momento dado. De este modo, por ejemplo si uno esta posicionado en un registro y desea obtener el siguiente, tener algo como "next" o "previous" sería muy útil.

Acts_as_ordered es un plugin interesante para obtener los registros previos o siguientes a uno determinado.Es muy versatil y potente. Se puede descargar de aquí.

Para mi cuestiones particulares, lo resolví a lo bestia, incluyendo estos dos métodos en la clase que los requería.

  1. def self.previous id
  2. prev_id= self.minimum(:id, :conditions => ['id > ?', id])
  3. self.find(prev_id)
  4. end
  5.  
  6. def self.next id
  7. next_id=self.maximum(:id, :conditions => ['id < ?', id])
  8. self.find(next_id)
  9. end

Saludos

Inspirado de un reply en Duane's Brain

Creando consultas ActiveRecord a partir de SQL

Buscando la razón por la cual me falla un find_each dentro de un rake, me encontré con este sitio que sin dudas no deja de ser interesante. Suele pasar que tenemos en claro como construir una sentencia SQL pero no sabemos como hacerlo en ActiveRecord. Este pequeño script lo resuelve. Lo estuve probando y hay casos en los que no devuelve nada, como ser pasando rangos con BETWEEN, por ejemplo.

  1. select * from members where first_name = 'Harold' and age = '34'
  2. => Members.find(:all, :conditions => {:age => "34", :first_name => "Harold"}
  3.  
  4. select * from members
  5. => Members.find(:all)
  6.  
  7. select * from members where first_name = 'Harold'
  8. => Members.find(:all, :conditions => {:first_name => "Harold"}
  9.  
  10. select * from members where first_name like '%Harold%'
  11. => Members.find(:all, :conditions => ["first_name like ?", '%Harold%'])

Conectando Rails a múltiples bases de datos

Entre las cosas con que un desarrollador se encuentra a lo largo de los proyectos, es con la tarea de integrar viejas y nuevas tecnologías, para construir algo nuevo y distinto. Este puede ser el caso de quienes tienen que integrar un AS/400 con un MS SQL Server, u o bien de aquellos que se ven en la necesidad de incorporar bases de datos preexistentes y de diversos tipos para darles un tratamiento adecuado. De este modo, por ejemplo, es usual que se pretenda compartir información en bases de datos locales mediante interfaces web. Para este caso, existen herramientas de desarrollo que permiten hacerlo, como ser Java, o en mi caso en particular, Rails.

Usar fb_adaptor con versiones viejas de Interbase

Como comenté en el update de post anterior respecto de como usar Firebird con JRuby , me era imposible insertar registros con sentencias sql, por lo que tuve que revisar otras opciones.

Intenté compilar el adaptador fb en JRuby sin éxito por tener dependencias nativas, por lo que decidí intentar con Ruby Enterprise Edition.

ActiveScaffold: Nested scaffold on a view with conditions for collection

ActiveScaffold is nice to get fastest results in short time but is a pain-on-ass if you try to made more.

In my case, I needed to show in a list some type of documents filtered by the conditions_for_collection method.

Error 500 en ActiveScaffold: ¿WTF?

En el periplo del desarrollo de aplicaciones Rails con ActiveScaffold es muy posible encontrarse con misteriosos carteles con el mensaje "Error 500" con un desagradable fondo en rojo.

Llegados a este punto es cuando uno empieza a:

¿Cómo usar calendar_date_select en ActiveScaffold?

En el día de ayer me vi en la necesidad de reemplazar los select que ActiveScaffold utiliza en los campos de fecha, por algo mucho más rápido, intuitivo y agradable. Fue así que busqué en los third party plugins de ActiveScaffold y me encontre con calendar_date_select, el cual es originario de Prototype.

Usando Firebird en Rails con JRuby

Por cuestiones del azar me he visto complicado en un brete del cual no he podido escapar. Para un cliente en particular he tenido que establecer relaciones entre su Interbase 6 existente  y mi proyecto Rails. A pesar de que a primera vista esto puede ser simple de hacer, en la práctica no lo es.

¿Qué hay de nuevo en GitHub?

Que hay de nuevo en Github (What's hot on Github) es una publicación mensual que destaca los proyectos más nuevos e interesantes que la comunidad Ruby aloja en Github. Github se ha convertido en un lugar extremadamente popular para los desarrolladores Ruby on Rails donde congregarse.

Distribuir contenido