【问题标题】:Strange equality error with PyMongo-flask [duplicate]PyMongo-flask 出现奇怪的相等错误 [重复]
【发布时间】:2018-04-17 21:07:41
【问题描述】:

所以我有这个 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"})

当我运行它时,数据库中没有数据,它会返回我输入的错误 404 消息。如您所知,我正在使用 Flask 和 Flask-PyMongo。

【问题讨论】:

  • 你的 if 语句应该做什么?结果永远不会是那个字符串。

标签: python mongodb flask pymongo flask-pymongo


【解决方案1】:

使用is 关键字,您可以比较对象的身份。

在您的情况下,您正在检查 subjectResults 是否与字符串文字 "[]" 相同的对象,这将始终是 False

有关 is 关键字的说明,请参阅 here

【讨论】:

    猜你喜欢
    • 2014-11-04
    • 2018-05-03
    • 1970-01-01
    • 1970-01-01
    • 2013-11-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多