对于mongoengine,有运算符all
和icontains
。但是如何合并它们的用法?
对每个项目说,我只想与icontains
匹配,而不与exact
匹配?我试图使用正则表达式。我可以工作,但不幸的是,如果mongoengine的查询集中有多个Q
,它将损坏。因为它将尝试deepcopy
pattern
对象,但是不幸的是pattern
对象不能被深深地复制。
最佳答案
实际上,我建议使用pymongo,通过easy_install pymongo
安装,在pymongo中,您可以尝试:
db.collections.find({'$and':[
{'field A':re.compile('your pattern')},
{'$ne':{'field A':'not exact word'}}
]})
在这里,
$ne
和$and
是本地mongo db运算符,您可以找到更多详细信息mongodb advnace query