首页 文章

Python Eve自定义 endpoints ,但从数据库中提取数据

提问于
浏览
1

我正在使用Python Eve开发RSS阅读器 . 我有一个用户模式声明如下:

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

所以在列表中我有一个RSS提要网址列表 . 我想创建一个自定义 endpoints ,从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"

但我一无所获 . 每次我尝试从我的数据库中获取数据时它都会失败并且我的所有查询都返回None . 我已经尝试使用我的所有数据库集合,各种不同的查询 . 我只是无法获得自定义 endpoints 来“查找”我的数据库 . 我究竟做错了什么?

1 回答

  • 1

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

    from bson.objectid import ObjectId
    
    a = users.find_one({'_id': ObjectId(_id)})
    

相关问题