hstore destina-se ao armazenamento simples de chave/valor, em que as chaves e os valores são strings simples não estruturadas. Do manual fino
:Observe a última frase:chaves e valores em
hstore são cordas. Isso significa que você não pode colocar um array em um hstore value sem algum suporte para converter a matriz de e para uma string e você realmente não quer brincar com esse tipo de coisa. No entanto, existe um tipo de dados JSON acessível:
e JSON podem manipular facilmente arrays e objetos incorporados. Tente usar JSON em vez disso:
add_column :users, :properties, :json
Você terá que remover o antigo
hstore coluna primeiro embora. Além disso, você não queria
array: true em sua hstore coluna porque você não estava armazenando uma matriz de hstore s, você só queria um deles.