Result.data在本地工作,在服务器上失败

时间:2019-10-09 12:16:17

标签: python python-3.x flask flask-sqlalchemy

当我直接返回结果时,它会在响应json中单独添加一个空白{}。     但是当我执行result.data时,请勿添加空白{}。     但result.data在服务器中不起作用并引发异常。

data = MasterInventoryBatch.query.filter_by(party_id=party_id).all()
        result = inventorysbatch_schema.dump(data)
return {
    "genericResponse": generic_response(responsecode.GET_BATCH_SUCCESS,
                                        "True",
                                        responsemessage.GET_BATCH_SUCCESS),
    "inventory": result
}

实际结果

{
    "genericResponse": {
        "apiStatusMessage": "GET_BATCH_SUCCESS",
        "apiSuccessStatus": "True",
        "code": 16002,
        "newToken": "null",
        "newTokenGenerated": "false"
    },
    "inventory": [
        [
            {},{},{},{},....
        ],
        {}
    ]
}

预期结果 实际结果

{
    "genericResponse": {
        "apiStatusMessage": "GET_BATCH_SUCCESS",
        "apiSuccessStatus": "True",
        "code": 16002,
        "newToken": "null",
        "newTokenGenerated": "false"
    },
    "inventory":[
            {},{},{},{},....
        ]
}

1 个答案:

答案 0 :(得分:0)

我假设您的代码如下

data = MasterInventoryBatch.query.filter_by(party_id=party_id).all()
result = inventorysbatch_schema.dump(data)
response = generic_response(responsecode.GET_BATCH_SUCCESS, "True", responsemessage.GET_BATCH_SUCCESS)
return {
    "genericResponse": response,
    "inventory": result,
}

如果我理解正确,

  • 返回result时得到[[{},{},{},{},....],{}]
  • 返回result.data时在服务器中引发错误

您是否可以尝试使用jsonify()返回响应,如下所示?

return jsonify({
    "genericResponse": response,
    "inventory": result,
})