对于mongoengine,有运营商all
和icontains
。但是我如何结合它们的用法呢?
对每件商品说,我只想与icontains
但不是exact
匹配?我试着用正则表达式。我工作,但不幸的是,如果我在mongoengine的查询集中有超过1 Q
,它将会中断。因为它会尝试deepcopy
pattern
对象,但不幸的是pattern
对象无法被深深复制。
答案 0 :(得分:1)
实际上,我建议在pymongo中使用pymongo,easy_install pymongo
安装,你可以试试:
db.collections.find({'$and':[
{'field A':re.compile('your pattern')},
{'$ne':{'field A':'not exact word'}}
]})
此处,$ne
和$and
是本机mongo db运算符,您可以找到更多详细信息mongodb advnace query