hstore er beregnet til simpel nøgle/værdi lagring, hvor både nøgler og værdier er simple ustrukturerede strenge. Fra den fine manual
:
Bemærk den sidste sætning:nøgler og værdier i hstore er strenge. Det betyder, at du ikke kan placere et array i en hstore værdi uden noget håndtag til at konvertere arrayet til og fra en streng, og du vil virkelig ikke rode rundt med den slags ting.
Der er dog en JSON-datatype tilgængelig:
og JSON kan nemt håndtere indlejrede arrays og objekter. Prøv at bruge JSON i stedet:
add_column :users, :properties, :json
Du bliver nødt til at fjerne den gamle hstore kolonne først.
Du ville heller ikke have array: true på din hstore kolonne, da du ikke lagrede et array af hstore s, du ville bare have en af dem.