我正在GRAILS中开发一个简单的Restful API,我希望用户能够在我的某个域类上创建一个条目,这样他们就可以访问一个入口点/ rest / v1 / create / event?params < / p>
如果GORM条目失败,在接收控制器中,!event.save()
我有这样的代码:
def result = [
'status' : 'error',
'data' : event.errors.fieldErrors.toList()
]
render result as JSON
有没有办法轻松地使event.errors.fieldErrors JSON友好,只有字段错误和消息,或者我是否必须编写解析器方法来处理它?</ p>
答案 0 :(得分:1)
结束编写一个简短的方法来解析并做出友好的错误
如果有人发现这个有用,请点击这里:
def gorm_errors(results) {
results = results.fieldErrors.toList()
def errors = []
for(error in results) {
errors.add([
'type' : 'invalid_entry',
'field' : error.field,
'rejected_value' : error.rejectedValue,
'message' : error.defaultMessage
])
}
return errors
}
答案 1 :(得分:0)
这是上面例子中更“groovy-er”的版本:
def gorm_errors(errors) {
errors.fieldErrors.toList().collect {error ->
[
'type': 'invalid_entry',
'field': error.field,
'rejected_value': error.rejectedValue,
'message': error.defaultMessage
]
}