標準の CRUD アプリ用の REST API を実装しています。1 つの例では、ユーザーのリストを取得するために、クライアントは以下を呼び出すことができます。
GET api.site.com/users
(およびオプション) ?name=x
phone=x
email=x
上記のオプションのパラメーターを渡すと、検索するユーザーがフィルター処理されます。
このロジックを Python で実装しようとしています。次のように、サブクエリをチェーンすることを考えています。
与えられた:
users = User.objects()
それで:
if 'name' in request.args:
users = users.objects(name = request.args['name'])
と:
# List of users is smaller after filtering by name
if 'phone' in request.args:
users = users.objects(phone = request.args['phone'])
と:
# List of users is smaller after filtering by phone
if 'email' in request.args:
users = users.objects(email = request.args['email'])
しかし、その方法は利用できず、MongoEngine API リファレンス、ユーザー ガイド、またはチュートリアルを調べても、これを行う方法を見つけることができません。
MongoEngine でサブクエリをチェーンするにはどうすればよいですか?