sql >> Base de Datos >  >> RDS >> Mysql

¿Existe una forma coherente/de mejores prácticas de actualizar un campo de base de datos que contiene un almacén de clave-valor hash?

Si entiendo la pregunta, creo que solo necesita declarar el nombre del campo que contiene la tienda y los accesores asociados (propiedades) en el modelo, como

store :settings, accessors: [ :weight, :length, :color ]

momento en el que el campo funciona con AR y AREL como cualquier otro, incluso con formularios.

Hay muy poca magia aquí. El campo contiene un hash de valores; la declaración de la tienda le permite a Rails saber que puede hacer referencia a ellos como algo.peso o algo.color, ya sea leyendo o escribiendo. Simple y elegante. DHH clásico.