1

mongodbから始めたばかりです。

context = {}
if request.method == 'POST':
    context['name']  = request.POST['name']
    context['username']  = request.POST['username']
    context['mobile']  = request.POST['mobile']
    get = db.messages.find( { 'name' : request.POST['name'] } )
    if get is not None:
        print get.name

データベースに2つのレコードがあります。

> db.messages.find()
{ "_id" : ObjectId("513f2cf1ae4cb53c1374b4f6"), "username" : "hello@gmail.com", "mobile" : "78978555", "name" : "rohit" }
{ "_id" : ObjectId("513f2cfeae4cb53c1374b4f7"), "username" : "hi@gmail.com", "mobile" : "8528522", "name" : "Rohti" }

rohitという名前のフォームを投稿するとき。上記のエラーが発生します。

ここで何が間違っているのか教えてください。

私はmongodbで間違ったクエリを実行していることを知っています。軌道に戻るのを手伝ってください。

4

2 に答える 2

8

getは、pymongoのカーソルとして戻ります。

試す:

for record in get:
    print record['name']

また、getは変数の適切な名前ではありません。

于 2013-03-12T14:09:44.913 に答える
1

カーソルで繰り返す必要があります。

for element in get:
    print(element.name)

これで、カーソルにアクセスします。カーソルは要素のジェネレーターであり、名前が直接含まれていません。完全な説明については、ここを参照してください。

于 2013-03-12T14:10:15.803 に答える