Consulta: Suponiendo que tienen una entidad digamos Ítem, donde por ejemplo ítem representa productos y servicios con atributos que pueden ser dados de alta en forma dinámica y que son de un tipo dato por los valores de una tabla (ej: monetario, pesable, texto, imagen...). Para complicarla un poquito más algunos tipos tienen unidades/formato ej. kilo, $, fecha y que como no podía ser de otra forma pueden ser mostrados con diferentes "localizaciones/idiomas". Al respecto no me cerró mucho lo que vi de internacionalización para rails con lo que necesito.
Les pongo un ejemplo de la metadata de un item: atributo 1= nombre :Texto atributo 2= descripcion :Texto atributo 3: peso :Pesable atributo 4: tags : Texto ... y así agrego tantos como quiero Es importante notar que los atributos son multivaluados en el sentido de que por ejemplo descripción cambia según el idioma de quien navega la aplicacion. Por ahora voy a obviar temas como el de conversion de unidades etc. En lo primero que pense es en un modelo basados en tablas de metadata para describir tipos de atributos, unidades, relaciones entre items y atributos y tablas para los datos concretos. A poco de andar me di cuenta que estaba lidiando con un problema un poco mas complejo que crear un model con atributos y termine con una explosión de tablas de metadata y data. Luego comencé a mirar *STI vs*. *Polymorphic* association<http://maulanaruby.wordpress.com/2007/02/17/sti-vs-polymorphic-association/> para decidirme por uno y así obtener felizmente mis productos y servicios con atributos dinámico donde pudiera por ejemplo decir: producto.precio=10 y no preocuparme por mada mas... En su experiencia que camino me conviene seguir para resolver esto en forma elegante y sin volver la capa de persitencia una pesadilla y con que problemas tipicos me puedo encontrar? Desde ya muchas gracias por cualquier aporte que me puedan hacer. Saludos. Leo
_______________________________________________ Ruby mailing list [email protected] http://lista.rubyargentina.com.ar/listinfo.cgi/ruby-rubyargentina.com.ar
