BetterNestedSet en Rails 2.1

Escrito por nelson Wed, 11 Jun 2008 01:18:00 GMT

Hay un plugin muy interesante para Rails llamado BetterNestedSet que permite generar modelos con generarquías anidades, el ejemplo clásico son las categorías de un producto, donde puede haber categorías de categorías.

El problema con este plugin es que no funciona bien con Rails 2.1, porque la última versión de Rails modifica los parámetros de un método que este plugin reemplaza.

Ya le envié el patch al autor, mientras tanto dejo acá también la actualización del método en el plugin para cualquiera que pueda necesitarlo.

#reemplazar este metodo en better_nested_set.rb
def attributes_with_quotes(include_primary_key = true, include_readonly_attributes = true, attribute_names = @attributes.keys)
  left_and_right_column = [acts_as_nested_set_options[:left_column], acts_as_nested_set_options[:right_column]]
  quoted = {}
  connection = self.class.connection
  attribute_names.each do |name|
    if column = column_for_attribute(name)
      quoted[name] = connection.quote(read_attribute(name), column) unless !include_primary_key && (column.primary || left_and_right_column.include?(column.name))
    end
  end
  include_readonly_attributes ? quoted : remove_readonly_attributes(quoted)
end

Ruby Hoedown 2007 Videos

Escrito por nelson Fri, 24 Aug 2007 00:55:00 GMT

En Confreaks están disponibles los videos de la conferencia Ruby Hoedown que se hizo hace un par de días. Hay un par de charlas muy buenas para ver.

También hay una entrevista Ezra Zygmuntowicz el creador de Merb entre otras cosas.

Para ponerlo en el bookmark y pasar un fin de semana entretenido.

via: InfoQ

Rhino sobre Rails

Escrito por nelson Sat, 14 Jul 2007 02:10:00 GMT

Leyendo un post de John Lam (es el que creador de RubyCRL y actualmente esta empleado por Microsoft) me entero que Steve Yegge dio una charla en Foo Camp titulada “Google Rails Clone” en la que comentaba el trabajo de portar Rails para funcionar sobre Rhino, una implementación de Javascript que funciona sobre Java.

Recomiendo mucho leer el post de Steve Yegg sobre el descargo de que es lo que realmente hicieron y porque reimplementaron sobre Javascript en vez de usar la versión original de Ruby. Muy interesante, para conocer algo de como se trabaja en Google.

Soy malo y les adelanto el final…... el código es de uso interno de Google y no va a ser liberado, al menos en el corto plazo.

No todo es Rails, también esta Merb !

Escrito por nelson Thu, 03 May 2007 19:48:00 GMT

Una presentación muy interesante de Ezra Zygmuntowicz sobre como implementar manejadores (handlers) en Mongrel y una introducción Merb.

Uso del API de ABBRR

Escrito por nelson Thu, 03 May 2007 03:06:00 GMT

Hace unos días Victor presentó un nuevo proyecto llamado ABBRR, que es un abreviador de urls.

La idea básica es poder generar una url corta y fácil de pasar por mail, IM, teléfono, por escrito u otro medio que caso contrario muchas veces resulta imposible por lo larga o porque los programas las manejan mal.

Un aspecto interesante es que Victor hizo un API y se puede solicitar un URL desde una aplicación externa. Vi que hay una versión para PHP y me picó el bichito de hacer una para Ruby y salió algo así:

require 'open-uri'
# 
# Rutina para hacer uso del API de ABBRR (http://api.abbrr.com/)
#
# Forma de uso: puts Abbrr.link('http://codear.com.ar')
#               puts Abbrr.bbcode('http://codear.com.ar')
#               puts Abbrr.textile('http://codear.com.ar')
#               ....
# posibles valores de salida: xml, link, html, bbcode, markdown, textile
# 
# por Nelson Fernandez, netFlux (c) - GPL
#
module Abbrr

  def self.method_missing(out,*url)
    open("http://api.abbrr.com/api.php?out=#{out}&url=#{url}").read
  end

end

Anteriores: 1 2 3