这是我使用的版本:
pymongo 3.9.0,
mongoengine-0.18.2,
python 3.7.1
我有一个简单的Document
,如下所示:
class MyModel(Document):
meta = {"collection": "my_model"}
name = StringField()
email = StringField()
address = StringField()
我想使用record
,name
或email
检查address
是否存在。我遵循此docs
因此,我运行以下查询:
user = MyModel.objects(Q(name="myname") | Q(email="abc@mail.com") | Q(address="1234567"))
if user.count() > 0:
print "User Existed"
但是结果总是返回true,即User already existed
,即使集合是空的。
我也尝试过if user is None
,但是结果还是一样。我认为是因为无论是否有结果,它总是会返回一个对象。
所以我的问题是,我如何检查查询是返回结果还是空结果?