Python Eve 自定义端点,但数据来自数据库

Python Eve Custom Endpoints, but with data pulled from database

我正在使用 Python Eve 制作 RSS Reader。我有一个这样声明的用户模式:

user_info_schema = {
     'username':{
         'type': 'string'
     },
    'feeds':{
        'type': 'list',
    }
 }

所以在列表中我有一个 RSS 提要 url 列表。我想制作一个自定义端点,从 url 中获取 RSS 内容并显示它们供我的客户端使用。所以我写:

@app.route('/api/username/<_id>/feeds')
def view_feed_content(_id):
    users = app.data.driver.db['users']
    a = users.find_one({'_id':_id})
    print(a)
    return "Test"

但我一无所获。每次我尝试从我的数据库中获取数据时,它都会失败,我的所有查询 return None。我已经尝试对我所有的数据库集合、各种不同的查询执行此操作。我只是无法获得 "find" 我的数据库的自定义端点。我做错了什么?

我认为您需要更改查找以查找类型为 ObjectId_id,如下所示:

from bson.objectid import ObjectId

a = users.find_one({'_id': ObjectId(_id)})