1. 程式人生 > 實用技巧 >bson.errors.InvalidDocument: documents must have only string keys, key was <class 'type'>

bson.errors.InvalidDocument: documents must have only string keys, key was <class 'type'>

最近在弄MongoDB查詢資料,試著用python實現查詢資料,不容易上手,在這裡總結一下報的錯誤

from pymongo import MongoClient

url= 'mongodb://user:password@ip:port'

class PyMongoDemo(object):
    def __init__(self):
        uri = url
        self.conn = MongoClient(uri)  # 建立資料庫連線
        self.db = self.conn.dongpin_db  # 資料庫名
        self.my_set = self.db.mall_order  #
表名 def getData(self): # 查詢本地址範圍內的一些資料 for data in self.my_set.find({'location':{ '$near':{'$geometry': { "type": "Point", 'coordinates': [116.407023,40.19442399] },'$minDistance': 10,'$maxDistance': 50}}},{"location": 1}): print(data) if __name__ == "__main__": mongo
= PyMongoDemo() mongo.getData()

在這裡報了一個上述的錯誤,原因是find()裡面的所有str字串都需要加上'' ",遺落了一個 type ,直接報錯,我還在傻了吧唧的配置資料庫相關東西....