1

に特定の電子メールアドレスを持つすべてのオブジェクトを返すクエリを作成しようとしていますListField(EmailField())

実行してmongoengineで試しました

User.Objects.filter(emaillist__contains=email)

問題は、電子メール文字列が電子メール リストに含まれる電子メールの部分文字列である場合に、オブジェクトも返されることです。ただし、大文字と小文字を区別しない電子メール文字列全体がリストフィールドに含まれている場合にのみ返されるようにします。

これはどういうわけか、または生のクエリを実行することで可能ですか? ヒントやヘルプをいただければ幸いです。

ジョナス

4

1 に答える 1

3

ドキュメントには、メーリング リストに似たこのモデルがあります。

class Post(Document):
    tags = ListField(StringField(max_length=30))

そして、彼らは次のようにクエリします:

for post in Post.objects(tags='mongodb'):
    print post.title

したがって、クエリは次のように機能するはずです (大文字と小文字を区別しません)。

User.Objects.filter(emaillist__iexact=email)
于 2013-11-14T08:53:59.027 に答える