【发布时间】:2020-04-21 23:29:50
【问题描述】:
我在查询我的 mongodb 数据库时遇到此错误:bson.errors.InvalidDocument: 文档必须只有字符串键,键是 函数位置在 0x7f50be59ac80,我的数据库集合看起来像这样(见下图)
这是代码
@app.route('/request books', methods=['GET', 'POST'])
@app.route('/get books', methods=['GET', 'POST'])
def requesting_for_books():
try:
mydb = mongo.db.mylogin
user_col = mydb.find_one({"email" : session['email']})
final = dict(user_col)
verify = final['isVerified']
form = RequestBooks()
if ('email' in session and verify == True) and ('password' in session and request.method == 'GET'):
return render_template('get_books.html', title="Get Books", donated_by=session['username'], form=form)
elif 'email' in session and request.method == 'POST':
requesting = mongo.db.mylogin
request_books = requesting.find({ location: { "$nearSphere": { "$geometry" : {"type" : "Point", "coordinates": [session['lat'], session['lang']]} } } })
x = []
for i in request_books:
x.append(i)
real_data = x
if request_books == None:
flash("Please enter a search query !")
return render_template('get_books.html', title='Get Books', form=form)
else:
return render_template('get_books.html', title="Get Books", request_books=request_books[0], form=form)
else:
flash('Please Login/Sign Up first to Search for books !')
return redirect(url_for('home'))
except KeyError:
flash("Please Sign in first !")
return render_template('index.html', title="Home")
但是,如果我遍历 request_books 变量,我可以得到 我的文档的 pymongo 光标值。
请帮忙!
【问题讨论】:
标签: python-3.x mongodb variables flask pymongo