擅长:python、mysql、java
<p>可以定义自己的解码器/编码器。我这样做了,很好地保存了:</p>
<pre><code>import json
import couchdb
from datetime import datetime, date
class JSONEncoderExtendDate(json.JSONEncoder):
def default(self, obj):
if isinstance(obj, datetime):
return obj.isoformat()
elif isinstance(obj, date):
return obj.isoformat()
return json.JSONEncoder.default(self, obj)
def encode_json(obj):
return json.dumps(obj, cls=JSONEncoderExtendDate)
def decode_json(obj):
return json.loads(obj)
couchdb.json.use(decode=decode_json, encode=encode_json)
</code></pre>
<p>然后正常保存</p>
<p>可能还应该实现解码器,但这是非常明显的。我只在python端使用保存。您需要同时定义解码器和编码器,这就是为什么它不是空的</p>