0

Grape を使用しており、postgres hstore データ フィールドにデータを保存しています。しかし問題は、Hashie::Mash をオブジェクトではなく文字列として格納することです。

   data_hash = {'top_key' => {'key1' => 'val1'}}
   db_obj = Model.find(1)
   db_obj.update_attributes(data: data_hash)

しかし、そのオブジェクトデータフィールドを取得すると、更新後に表示されます

   {"top_key"=>"#<Hashie::Mash key1=\"val1\">"}
4

1 に答える 1

0

hstore が適切に処理できないネストされたハッシュが原因です。nested-hstore gem を使用した後、問題が修正されました。

于 2014-05-12T10:46:12.297 に答える