2017-06-25 10 views
1

私はPython Eveを使用してRSSリーダーを開発しています。私はそう宣言されたユーザスキーマを持っています:Python Eveカスタムエンドポイント、ただしデータはデータベースから取得しました

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

私はRSSフィードのリストを持っています。 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を返します。私はすべての私のdbコレクション、これは、さまざまなクエリのすべての種類でこれを試みた。私は自分のデータベースを "見つける"ためにカスタムエンドポイントを取得できません。私は間違って何をしていますか?

答えて

1

私はあなたがこのようなタイプObjectId_idを見つけるためにあなたの検索を変更する必要があると思う。それがあったことを

from bson.objectid import ObjectId 

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

と私はダム感じます。次回は、スタックオーバーフローが発生する前に、より多くのテストを行う必要があります。ありがとう! – user2757964

関連する問題