有一些方法可以返回字段包含某些值的项目吗?例如。
GET /people?contains="foo"
返回名称中包含“foo”一词的所有人员。
提前致谢
您可以使用 mongodb运算符,它在 Eve ( )$regex
中默认被列入黑名单。MONGO_QUERY_BLACKLIST = ['$where', '$regex']
添加MONGO_QUERY_BLACKLIST = ['$where']
到您的settings.py
. 然后你可以像这样查询你的 API:
?where={"name": {"$regex": ".*foo.*"}}
.
不过要小心。如果您不控制客户端,启用正则表达式可能会增加您的 API 漏洞。
我自己并不熟悉夏娃。但是看看它的网页似乎暴露了 Flask 的所有功能。
您需要查看有关访问请求数据的文档中的此页面。
在您的 Flask 应用程序中,定义一个同时接受 POST 和 GET 请求的方法,然后您可以foo
通过执行request.args.get('contains', '')
.
这就是我的意思:
@app.route('/people', methods=['POST', 'GET'])
def get_people():
search_key = request.args.get('contains', '')
#search for people containing 'foo' in your DB
希望这能给你一个关于如何做事的起点。