PyMongo-flask 出现奇怪的相等错误
Strange equality error with PyMongo-flask
所以我有这个 api 端点:
@app.route("/subject", methods=["GET"])
def GET_subject():
subject = request.args["subject"]
page = int(request.args["page"])
pagesize = 10
subjectResults = db.subject.find()[pagesize*(page-1):pagesize*(page)]
if subjectResults is "[]":
return json.dumps({"page": page, "subject": subject, "subjectResults": bson.json_util.dumps(subjectResults)})
else:
return json.dumps({"error": "404"})
当我 运行 它时,数据库中没有数据,它 returns 我输入的错误 404 消息。如您所知,我正在使用 Flask 和 Flask-PyMongo为此。
使用 is
关键字,您正在比较对象的身份。
在你的例子中,你正在检查 subjectResults
是否与字符串文字 "[]"
是同一个对象,它总是 False
.
有关 is
关键字的说明,请参见 here。
所以我有这个 api 端点:
@app.route("/subject", methods=["GET"])
def GET_subject():
subject = request.args["subject"]
page = int(request.args["page"])
pagesize = 10
subjectResults = db.subject.find()[pagesize*(page-1):pagesize*(page)]
if subjectResults is "[]":
return json.dumps({"page": page, "subject": subject, "subjectResults": bson.json_util.dumps(subjectResults)})
else:
return json.dumps({"error": "404"})
当我 运行 它时,数据库中没有数据,它 returns 我输入的错误 404 消息。如您所知,我正在使用 Flask 和 Flask-PyMongo为此。
使用 is
关键字,您正在比较对象的身份。
在你的例子中,你正在检查 subjectResults
是否与字符串文字 "[]"
是同一个对象,它总是 False
.
有关 is
关键字的说明,请参见 here。