Como você está usando o postgres, você está com sorte:o postgres tem um json modelo. Isso é muito melhor do que usar serialize para armazenar os dados como alguma forma de string codificada, porque o postgres possui uma rica família de operadores que permitem consultar esses dados json.
Se você estiver usando o postgres 9.4, também poderá usar o tipo jsonb. Isso geralmente é melhor, pois armazena uma versão processada dos dados (ou seja, não precisa continuar analisando os dados repetidamente) e permite índices.
Rails suporta isso imediatamente (veja aqui ), você só precisa adicionar uma coluna do tipo json(b). Se sua migração contiver
create_table :damages do |t|
t.string :description
t.jsonb :damage_points
end
então
Damage.create(damage_points: [{left: 40, top: 99}, {left: 100, top: 35}])
criaria uma linha com o armazenamento de dados de pontos de dano como json. A única coisa a observar é que, embora seus dados de entrada tenham símbolos como chaves nos hashes, ao buscar no banco de dados, você sempre obterá strings de volta como chaves.