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.