0

私は CherryPy を使用していますが、サーバーに保存されているファイルからデータを取得する場合、うまく動作しないようです。(私はそれについて助けを求めましたが、誰も答えなかったので、私は計画BまたはCに進んでいます.驚くべきことに、バイナリ オブジェクト (longblob) を挿入するのは思ったより簡単でした。それを pickle ファイルにして INSERTED しました。

ただし、ピクルを再構成して、そこからデータでいっぱいのクラスを再構築する方法がわかりません。データベースは pickle に似た巨大な文字列を返しますが、pickle.load(data) が機能するように文字列をファイルのようなオブジェクトにするにはどうすればよいでしょうか?

代替ソリューション: クラスを BLOB としてデータベースに保存する方法、またはこのクラスのピクルを保存できる理由についていくつかのアイデアがありますが、後でロードすると、クラスが失われているようです。しかし、SSH / ローカルでは動作します。cherrypy から pickle.load(xxx) を呼び出す場合にのみ、エラーが発生します。

私はプラン D に賛成です。ピクルスや MYSQL ブロブを使用せずに構造化データのコレクションを保存して高速に取得するためのより良い方法があれば...

4

2 に答える 2

0

私はこれに苦労しました。

UTF-8 文字セットを使用してバイトに変換し、オブジェクトにデータをロードしてみてください。

CurrentShoppingCart.SetCartItems(pickle.loads(bytes(DBCart[0]['Cart'], 'UTF-8')))

アンドリュー

于 2012-06-07T16:28:06.093 に答える