Google API から多くのデータを集約する Rails アプリがあります。現在、JSON 応答を MongoDB に保存しています (したがって、Rails アプリには pg と mongo の両方があります)。しかし、今日、PostgreSQL Hstore 拡張機能に出会い、試してみることにしました。
残念ながら、問題が発生しました。API によって提供される JSON は複数レベルの深さであるため、Ruby Hash afterJSON.parse
には、新しいハッシュを含むハッシュが含まれます。ただし、Hstore
文字列キー/値ストアであり、1 レベルの深さしかありません。したがって、最初のハッシュ内のハッシュは文字列になります。
私が見つけた本当に厄介なハックはeval
、文字列に変換されたハッシュに対するものです。
eval("{ "foo" => "bar" }")
私はこれが好きではない。何をすべきかについてのヒントはありますか?MongoDB を使い続ける必要がありますか、それともマルチレベルのディープ ハッシュを PG に格納するためのより良い方法はありますか?