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

Responder a