定义Flask Restful API的自定义错误信息
我在定义自己的错误自定义信息时遇到了一些问题。我不太确定自己是否做对了,但我在尝试按照文档的说明来做:
http://flask-restful.readthedocs.org/en/latest/extending.html#define-custom-error-messages
这是我的代码:
from flask import Flask
from flask.ext import restful
myerrors = {
'CannotFind':{
'message':'We could not find it!',
'status':404
}
}
app = Flask(__name__)
api = restful.Api(app, errors = myerrors)
但是当我运行这个程序时,我遇到了一个错误:
TypeError: __init__() got an unexpected keyword argument 'errors'
文档上说 一旦你的错误字典定义好,就把它传给Api构造函数
,我不是这样做了吗?
我还注意到文档中使用了:
api = flask_restful.Api(app, errors=errors)
所以我以为我使用的方式不对,于是我尝试导入那个flask_restful,但它并不存在……
现在我很困惑,请帮帮我!
1 个回答
8
当你通过pip安装flask-restful时,得到的版本是v0.2.12。
这个版本没有flask_restful.API.__init__
中的errors
这个参数,具体可以查看这个github链接。
如果想要使用errors
这个参数,你需要从github上安装更新的代码。关于怎么做,有详细的说明可以在flask-restful的安装页面找到。
编辑:截至2014年11月23日,这个回答不再适用,因为flask-restful的v0.3.0版本已经发布,并且可以在pypi上找到。