本次,我需要把字符串数据以bson形式存储到mongodb,发现存储到数据库内是OK的。取出来解码的时候总是提示如下错误:
TypeError: unbound method decode() must be called with BSON instance as first argument (got Binary instance instead)
一直提示我解码时候,不是BSON的实体。这让我很是郁闷。存进去的是编码成BSON,取出来怎么就不是了????
然后将输入的编码类型与输出的编码类型打印出来如下:
<class 'bson.BSON'>
<class 'bson.binary.Binary'>
上面一行是输入的编码类型,后面一行是从mongodb中取出来的类型,两次发生了变化。
这需要将取出来的数据转换成bson.BSON。
这里需要做如下的操作即可:
re_data = bson.BSON(re_data)
其中re_data是从mongodb中取出来的数据。