MongoDB の Python ドライバーの上にあるレイヤーである MongoAlchemy を学習しています。次のように MongoDB オブジェクトからマッピングされた Python クラスがあるとします。
from mongoalchemy.document import Document
from mongoalchemy.fields import *
class Person(Document):
name = StringField()
そして、次のようにデータベースにクエリを実行します。
for person in query.filter(Person.name == 'Geronimo'):
print person
それは正常に動作しますが、大文字と小文字を区別しない名前 (「geronimo」と「Geronimo」の両方) をデータベースに照会するか、2 つの o を含むすべての名前を検索したいと考えています。query.filter(Person.name[1:] == 'eronimo')
Person.name は文字列ではなく QueryField オブジェクトであるため、これは機能しません。
MongoAlchemy でこのような複雑なクエリを実行するにはどうすればよいですか?