【发布时间】:2015-02-14 08:19:19
【问题描述】:
我为我的 ndb stringProperties 推出了一个自定义验证器,以去除我网站的恶意代码。
def stringValidator(prop, value):
lowerValue = value.lower()
stripped = str(utils.escape(lowerValue))
if stripped != lowerValue:
raise datastore_errors.BadValueError(prop)
return stripped
在其他地方,我发现了该错误并将失败返回给客户端。我希望能够返回验证失败的属性类型。
except datastore_errors.BadValueError as err:
如果我print(err) 我得到:
StringProperty('email', validator=<function stringValidator at 0x1079e11b8>)
我看到这个 StringProperty 包含我要返回的属性的名称:'email'。如何提取它?
编辑:Dmitry 给了我最重要的一半答案——为了在我传递 ._name 属性后访问错误对象的值,我需要使用:
str(err.args[0])
【问题讨论】:
标签: python google-app-engine properties error-handling validation