Python 如何在Flask resful中返回错误消息?

Python 如何在Flask resful中返回错误消息?,python,flask,error-handling,flask-restful,Python,Flask,Error Handling,Flask Restful,我在Post方法中添加了一个检查,只允许不同日期的约会通过,但我不知道如何返回错误消息。这是密码 from flask_restful import Resource, Api, request from package.model import conn class Appointments(Resource): def get(self): appointment = conn.execute("SELECT p.*,d.*,a.* from appointme

我在Post方法中添加了一个检查,只允许不同日期的约会通过,但我不知道如何返回错误消息。这是密码

from flask_restful import Resource, Api, request
from package.model import conn


class Appointments(Resource):

    def get(self):
        appointment = conn.execute("SELECT p.*,d.*,a.* from appointment a LEFT JOIN patient p ON a.pat_id = p.pat_id LEFT JOIN doctor d ON a.doc_id = d.doc_id ORDER BY appointment_date DESC").fetchall()
        return appointment

    def post(self):
        appointment = request.get_json(force=True)
        pat_id = appointment['pat_id']
        doc_id = appointment['doc_id']
        appointment_date = appointment['appointment_date']

        a = conn.execute("SELECT count(*) From appointment WHERE doc_id =?
         AND appointment_date=?",(doc_id,appointment_date,)).fetchone()
        if a['count(*)'] == 0:
            appointment['app_id'] = conn.execute('''INSERT INTO appointment(pat_id,doc_id,appointment_date)VALUES(?,?,?)''', (pat_id, doc_id,appointment_date)).lastrowid
            conn.commit()
            return appointment
        else:
            pass
返回什么而不是pass语句


PS:对于上下文,我正在尝试改进Flask Restful提供了一个
中止
函数,它可以使用特殊的HTTP代码引发HTTPException并将消息返回给客户端

因此,您可以尝试更改代码,如下所示:

from flask_restful import abort

class Appointments(Resource):
    def post(self):
        # ignore some code
        if a['count(*)'] == 0:
           # ignore some code
        else:
           abort(403, error_message='just accept an appointment on special date')
{"error_message":"just accept an appointment on special date"}
然后,客户端将收到403和一个有效的JSON字符串,如下所示:

from flask_restful import abort

class Appointments(Resource):
    def post(self):
        # ignore some code
        if a['count(*)'] == 0:
           # ignore some code
        else:
           abort(403, error_message='just accept an appointment on special date')
{"error_message":"just accept an appointment on special date"}
最后,客户端应该正确处理错误消息