私たちのpostgres DBにJSONのようなオブジェクトを格納する必要があります。 元々はシリアル化されたフィールドを使用していましたが、余分なスペースを消費するのは でした。そこで私は単純なカスタム圧縮 スキームを書いて、データにアクセスするためにMarshal.dump/loadを使用しています。 しかし、私はpostgresのbyteaフィールドタイプの問題にぶつかりました。それは、すべての非可視バイトが3桁の8進数としてエンコードされていると言います( )。 '\ 377'Ruby on Railsを使用してpostgresにバイナリオブジェクトを格納する
http://www.postgresql.org/docs/8.1/static/datatype-binary.html
私はこれを達成するための簡単な方法を見ることはできません。 s.pack( "m#s.size") は、 '\'が1つの文字列を生成するようですが、postgresは '\'が必要です。 最後にgsub(/ \ /、 '\\\\')を追加しても解決しないようです。
もっと洗練されたソリューションをお持ちの方はいらっしゃいますか?
それはトリックでした。ありがとうございました! –