hstore
ist für die einfache Speicherung von Schlüsseln/Werten gedacht, wobei sowohl die Schlüssel als auch die Werte einfache unstrukturierte Zeichenfolgen sind. Aus dem feines Handbuch
:
Beachten Sie den letzten Satz:Schlüssel und Werte in hstore
sind Saiten. Das bedeutet, dass Sie kein Array in einen hstore
einfügen können Wert, ohne dass Sie das Array in und aus einem String umwandeln müssen, und Sie wollen wirklich nicht mit so etwas herumspielen.
Es gibt jedoch einen JSON-Datentyp verfügbar:
und JSON kann eingebettete Arrays und Objekte problemlos verarbeiten. Versuchen Sie stattdessen, JSON zu verwenden:
add_column :users, :properties, :json
Sie müssen den alten hstore
entfernen Spalte zuerst.
Außerdem wollten Sie array: true
nicht auf Ihrem hstore
-Spalte, da Sie kein Array von hstore
gespeichert haben s, du wolltest nur einen von ihnen.