我在从<canvas id="one" width="300" height="300"></canvas>
实例获取对象时遇到问题。如果我使用mongodb
接口搜索此对象,一切都很好-可以找到对象。如果尝试使用pymongo
做同样的事情-它将失败并显示错误。
这是我在做什么:
pymodm
第一张打印输出:from pymodm import connect, MongoModel, fields
from pymongo import MongoClient
class detection_object(MongoModel):
legacy_id = fields.IntegerField()
client = MongoClient(MONGODB_URI)
db = client[MONGODB_DEFAULT_SCHEME]
collection = db['detection_object']
do = collection.find_one({'legacy_id': 1437424})
print(do)
connect(MONGODB_URI)
do = detection_object.objects.raw({'legacy_id': 1437424}).first()
print(do)
。但是,在执行以下命令期间:{'_id': ObjectId('5c4099dcffa4fb11494d983d'), 'legacy_id': 1437424}
解释器因以下错误而失败:
do = detection_object.objects.raw({'legacy_id': 1437424}).first()
怎么可能?我试图查询具有相同连接和集合的相同对象。有什么想法吗?
答案 0 :(得分:0)
您可以尝试以下操作:
detection_object.objects.raw({'legacy_id': "1437424"} ).first()
legacy_id
可能存储为字符串。
否则,请确保数据库名称出现在docs中带下划线的MONGO_URI
的末尾。
答案 1 :(得分:0)
“ detection_object”集合中的每个文档都必须具有“ _cls”属性。存储在此属性中的字符串值应为
__main__.classname
(根据您的代码,类名是detection_object)。
例如,您数据库中的文档需要如下所示:
{'_id': ObjectId('5c4099dcffa4fb11494d983d'), 'legacy_id': 1437424, '_cls': '__ main __.detection_object'}