python,mongoengine - 进行 like/regex 搜索
python, mongoengine - do like/regex search
我知道我可以在 mongodb 上进行全局搜索:
db.person.find({ name: /*.bob.*/ })
或
db.person.find({ name: { $regex: '*.bob.*' }})
如何在不使用原始查询的情况下使用 mongoengine 执行此操作(这显然是基于我的搜索的唯一方法)?
我盲目地尝试了几种变体,例如:
Person.objects(name='/.*bob.*/')
Person.objects(name='/\.*bob\.*/')
Person.objects(name='.*bob.*')
Person.objects(name='\.*bob\.*')
等等,无济于事...
看来你可以这样做:
import re
regex = re.compile('.*bob.*')
Person.objects(name=regex)
我知道我可以在 mongodb 上进行全局搜索:
db.person.find({ name: /*.bob.*/ })
或
db.person.find({ name: { $regex: '*.bob.*' }})
如何在不使用原始查询的情况下使用 mongoengine 执行此操作(这显然是基于我的搜索的唯一方法)?
我盲目地尝试了几种变体,例如:
Person.objects(name='/.*bob.*/')
Person.objects(name='/\.*bob\.*/')
Person.objects(name='.*bob.*')
Person.objects(name='\.*bob\.*')
等等,无济于事...
看来你可以这样做:
import re
regex = re.compile('.*bob.*')
Person.objects(name=regex)